<?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>223810</bug_id>
          
          <creation_ts>2021-03-26 12:12:11 -0700</creation_ts>
          <short_desc>Remove ENABLE_INDEXED_DATABASE &amp; ENABLE_INDEXED_DATABASE_IN_WORKERS, it seems like it is on for all ports</short_desc>
          <delta_ts>2021-03-28 12:15:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>alecflett</cc>
    
    <cc>annulen</cc>
    
    <cc>beidson</cc>
    
    <cc>benjamin</cc>
    
    <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>hi</cc>
    
    <cc>japhet</cc>
    
    <cc>jbedard</cc>
    
    <cc>joepeck</cc>
    
    <cc>jsbell</cc>
    
    <cc>kangil.han</cc>
    
    <cc>keith_miller</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>saam</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1744267</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-26 12:12:11 -0700</bug_when>
    <thetext>As far as I can tell, ENABLE_INDEXED_DATABASE_IN_WORKERS is enabled for all ports. It is on for the cocoa ports via PlatformEnableCocoa.h. It is on for the non-cocoa ports via WebKitFeatures.cmake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744332</commentid>
    <comment_count>1</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-26 14:36:23 -0700</bug_when>
    <thetext>Seems like this is also true for ENABLE_INDEXED_DATABASE. Let&apos;s do both.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744396</commentid>
    <comment_count>2</comment_count>
      <attachid>424422</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-26 17:13:51 -0700</bug_when>
    <thetext>Created attachment 424422
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744400</commentid>
    <comment_count>3</comment_count>
      <attachid>424423</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-26 17:20:31 -0700</bug_when>
    <thetext>Created attachment 424423
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744402</commentid>
    <comment_count>4</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2021-03-26 17:21:53 -0700</bug_when>
    <thetext>This patch modifies the inspector protocol. Please ensure that any frontend changes appropriately use feature checks for new protocol features.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744433</commentid>
    <comment_count>5</comment_count>
      <attachid>424432</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-26 19:27:24 -0700</bug_when>
    <thetext>Created attachment 424432
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744527</commentid>
    <comment_count>6</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-27 11:37:04 -0700</bug_when>
    <thetext>Any inspector folk know what&apos;s going on with the Windows&apos;s build?

C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(46,84): error C2039: &apos;IndexedDBBackendDispatcherHandler&apos;: is not a member of &apos;Inspector&apos; (compiling source file C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource-84c9f43f-2.cpp) [C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(38): message : see declaration of &apos;Inspector&apos; (compiling source file C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource-84c9f43f-2.cpp) [C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(46,118): error C2504: &apos;IndexedDBBackendDispatcherHandler&apos;: base class undefined (compiling source file C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource-84c9f43f-2.cpp) [C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(60,65): error C2065: &apos;RequestDatabaseNamesCallback&apos;: undeclared identifier (compiling source file C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource-84c9f43f-2.cpp) [C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
C:\cygwin\home\buildbot\worker\Windows-EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(60,61): error C2923: &apos;WTF::Ref&apos;: &apos;RequestDatabaseNamesCallback&apos; is not a valid template type argument for parameter &apos;T&apos; (compiling source file C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource-84c9f43f-2.cpp) [C:\cygwin\home\buildbot\worker\Windows-EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744574</commentid>
    <comment_count>7</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2021-03-27 18:55:23 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #6)
&gt; Any inspector folk know what&apos;s going on with the Windows&apos;s build?
&gt; 
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(46,84):
&gt; error C2039: &apos;IndexedDBBackendDispatcherHandler&apos;: is not a member of
&gt; &apos;Inspector&apos; (compiling source file
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-
&gt; sources\UnifiedSource-84c9f43f-2.cpp)
&gt; [C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(38):
&gt; message : see declaration of &apos;Inspector&apos; (compiling source file
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-
&gt; sources\UnifiedSource-84c9f43f-2.cpp)
&gt; [C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(46,118):
&gt; error C2504: &apos;IndexedDBBackendDispatcherHandler&apos;: base class undefined
&gt; (compiling source file
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-
&gt; sources\UnifiedSource-84c9f43f-2.cpp)
&gt; [C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(60,65):
&gt; error C2065: &apos;RequestDatabaseNamesCallback&apos;: undeclared identifier
&gt; (compiling source file
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-
&gt; sources\UnifiedSource-84c9f43f-2.cpp)
&gt; [C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\Source\WebCore\inspector\agents\InspectorIndexedDBAgent.h(60,61):
&gt; error C2923: &apos;WTF::Ref&apos;: &apos;RequestDatabaseNamesCallback&apos; is not a valid
&gt; template type argument for parameter &apos;T&apos; (compiling source file
&gt; C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\DerivedSources\WebCore\unified-
&gt; sources\UnifiedSource-84c9f43f-2.cpp)
&gt; [C:\cygwin\home\buildbot\worker\Windows-
&gt; EWS\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]

I have been told this is just to be expected from the Windows port. So please ignore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744632</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-03-28 12:14:27 -0700</bug_when>
    <thetext>Committed r275151: &lt;https://commits.webkit.org/r275151&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 424432.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1744634</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-03-28 12:15:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/75934037&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424422</attachid>
            <date>2021-03-26 17:13:51 -0700</date>
            <delta_ts>2021-03-26 17:20:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223810-20210326171350.patch</filename>
            <type>text/plain</type>
            <size>186458</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9J
Tl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL3Byb3Rv
Y29sL0luZGV4ZWREQi5qc29uOgorICAgICAgICBVcGRhdGUgZm9yIHJlbW92ZSBFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSBjb25kaXRpb25hbC4KKwogMjAyMS0wMy0yNiAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIFVzZSBBcHBsZUlDVSBTUEkgZm9y
IGNhbm9uaWNhbGl6YXRpb24KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvSW5kZXhlZERCLmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbmRleGVkREIuanNvbgkocmV2aXNpb24gMjc1MTA1KQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbmRleGVkREIuanNv
bgkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDUgQEAKIHsKICAgICAiZG9tYWluIjogIkluZGV4
ZWREQiIsCi0gICAgImNvbmRpdGlvbiI6ICJkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
KSAmJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSIsCiAgICAgImRlYnVnZ2FibGVUeXBlcyI6IFsi
cGFnZSIsICJ3ZWItcGFnZSJdLAogICAgICJ0YXJnZXRUeXBlcyI6IFsicGFnZSJdLAogICAgICJ0
eXBlcyI6IFsKSW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAzLTI2ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtl
IGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxlLmg6CisgICAgICAgICogd3RmL1Bs
YXRmb3JtRW5hYmxlQ29jb2EuaDoKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFIGFuZCBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLgorCiAyMDIxLTAzLTI2
ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4KIAogICAgICAgICBFbmFibGUgTWV0YWwg
QU5HTEUgYmFja2VuZCBmb3IgV2ViR0wKSW5kZXg6IFNvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5h
YmxlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAkocmV2
aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjc5LDE0ICsyNzksNiBAQAogI2RlZmluZSBFTkFCTEVfR0VPTE9DQVRJT04g
MAogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkKLSNkZWZp
bmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgMAotI2VuZGlmCi0KLSNpZiAhZGVmaW5lZChFTkFC
TEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKQotI2RlZmluZSBFTkFCTEVfSU5ERVhFRF9E
QVRBQkFTRV9JTl9XT1JLRVJTIDAKLSNlbmRpZgotCiAjaWYgIWRlZmluZWQoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1IpCiAjZGVmaW5lIEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SIDEKICNlbmRpZgpJ
bmRleDogU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL1BsYXRmb3JtRW5hYmxlQ29jb2EuaAkocmV2aXNpb24gMjc1MTA1KQor
KysgU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNDAsMTQgKzI0MCw2IEBACiAjZGVmaW5lIEVOQUJMRV9VSV9QUk9DRVNTX1BERl9IVUQgMQog
I2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkKLSNkZWZpbmUg
RU5BQkxFX0lOREVYRURfREFUQUJBU0UgMQotI2VuZGlmCi0KLSNpZiAhZGVmaW5lZChFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKQotI2RlZmluZSBFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRV9JTl9XT1JLRVJTIDEKLSNlbmRpZgotCiAjaWYgIWRlZmluZWQoRU5BQkxFX0lOUFVUX1RZ
UEVfREFURSkKICNkZWZpbmUgRU5BQkxFX0lOUFVUX1RZUEVfREFURSAxCiAjZW5kaWYKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxMyBAQAorMjAyMS0wMy0yNiAgU2FtIFdlaW5pZyAg
PHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywgaXQgc2VlbXMgbGlrZSBp
dCBpcyBvbiBmb3IgYWxsIHBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMjM4MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGNvbmRpdGlvbmFscy4KKworICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0RPTVdpbmRvdytJbmRleGVkRGF0YWJhc2UuaWRsOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmg6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvSURCQWN0aXZlRE9NT2JqZWN0Lmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJDdXJzb3IuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvckRpcmVjdGlvbi5pZGw6CisgICAg
ICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaWRsOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkRhdGFiYXNlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJEYXRhYmFzZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlk
bDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZUlkZW50aWZpZXIuY3Bw
OgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5oOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1
ZXN0LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZU5hbWVBbmRW
ZXJzaW9uUmVxdWVzdC5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rvcnku
Y3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQkdldEFsbFJlc3VsdC5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkdldFJl
c3VsdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0Lmg6Cisg
ICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCSW5kZXguY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQkluZGV4Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURC
SW5kZXguaWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleS5jcHA6CisgICAg
ICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvSURCS2V5RGF0YS5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5
RGF0YS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVBhdGguY3BwOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVBhdGguaDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9JREJLZXlSYW5nZS5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIv
SURCS2V5UmFuZ2UuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5p
ZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcDoKKyAg
ICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZURhdGEuaDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJPYmplY3RTdG9yZS5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRC
UmVxdWVzdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVz
dC5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuaWRsOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlJlY29yZElkZW50aWZpZXIuaDoKKyAgICAg
ICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9JREJSZXF1ZXN0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURC
UmVxdWVzdC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdENvbXBs
ZXRpb25FdmVudC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdENv
bXBsZXRpb25FdmVudC5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5oOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbk1vZGUuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbk1vZGUuaWRsOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQlZhbHVlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJW
YWx1ZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVu
dC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50
Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50Lmlk
bDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JbmRleGVkREIuaDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFzZS5jcHA6Cisg
ICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJh
c2UuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblBy
b3h5LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlv
blByb3h5Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rp
b25Ub1NlcnZlci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNv
bm5lY3Rpb25Ub1NlcnZlci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9J
REJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvY2xpZW50L1RyYW5zYWN0aW9uT3BlcmF0aW9uLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL0lEQkJhY2tpbmdTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnQuY3BwOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnQuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUu
aDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbi5j
cHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlhbGl6YXRpb24u
aDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNv
bnRleHQuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxp
emF0aW9uQ29udGV4dC5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJT
ZXJ2ZXIuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIu
aDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNw
cDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5Lmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVTdG9yZS5jcHA6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVTdG9yZS5oOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlCYWNraW5nU3RvcmVUcmFu
c2FjdGlvbi5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJh
Y2tpbmdTdG9yZVRyYW5zYWN0aW9uLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUN1cnNvci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVy
L01lbW9yeUN1cnNvci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1v
cnlJREJCYWNraW5nU3RvcmUuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlJREJCYWNraW5nU3RvcmUuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5SW5kZXguY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlJbmRleC5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1v
cnlJbmRleEN1cnNvci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUluZGV4Q3Vyc29yLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeU9iamVjdFN0b3JlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5T2JqZWN0U3RvcmUuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZUN1cnNvci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQ3Vyc29yLmNwcDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQ3Vyc29yLmg6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQlRyYW5zYWN0aW9uLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24uaDoKKyAgICAg
ICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU2VydmVyT3BlbkRCUmVxdWVzdC5jcHA6Cisg
ICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NlcnZlck9wZW5EQlJlcXVlc3QuaDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3Bw
OgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5o
OgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZUNv
bm5lY3Rpb24uY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJ
REJEYXRhYmFzZUNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCQ3Vyc29ySW5mby5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvckluZm8uaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCQ3Vyc29yUmVjb3JkLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHA6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5oOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmg6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSURCRXJyb3IuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5oOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJHZXRSZWNvcmREYXRhLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0UmVjb3JkRGF0YS5oOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8uY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8uaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJJdGVyYXRlQ3Vyc29yRGF0YS5oOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9yZUluZm8uY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9yZUluZm8uaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVxdWVzdERhdGEuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXF1ZXN0RGF0YS5oOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuY3BwOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc3VsdERhdGEuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCVHJhbnNhY3Rpb25JbmZvLmNwcDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCVHJhbnNhY3Rpb25JbmZvLmg6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0luZGV4S2V5LmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuaDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxp
dGllcy5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxpdGllcy5oOgor
ICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpT
RE9NR2xvYmFsT2JqZWN0OjpzY3JpcHRFeGVjdXRpb25Db250ZXh0IGNvbnN0KToKKyAgICAgICAg
KFdlYkNvcmU6OnNjcmlwdE1vZHVsZUxvYWRlcik6CisgICAgICAgICogYmluZGluZ3MvanMvSlNJ
REJDdXJzb3JDdXN0b20uY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCQ3Vyc29yV2l0
aFZhbHVlQ3VzdG9tLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lEQkluZGV4Q3VzdG9t
LmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lEQk9iamVjdFN0b3JlQ3VzdG9tLmNwcDoK
KyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0lEQlJlcXVlc3RDdXN0b20uY3BwOgorICAgICAgICAq
IGJpbmRpbmdzL2pzL0pTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdC5jcHA6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Lmg6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNJREJUcmFuc2FjdGlvbkN1c3RvbS5jcHA6CisgICAgICAgICogYmlu
ZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9q
cy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJDb3Jl
SlNDbGllbnREYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTVk1DbGllbnREYXRhOjpKU1ZN
Q2xpZW50RGF0YSk6CisgICAgICAgICogYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5o
OgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVu
dDo6aWRiQ29ubmVjdGlvblByb3h5KToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpzZXRC
YWNrRm9yd2FyZENhY2hlU3RhdGUpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgorICAgICAg
ICAqIGRvbS9FbXB0eVNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAgKiBkb20vRXZl
bnROYW1lcy5pbjoKKyAgICAgICAgKiBkb20vRXZlbnRUYXJnZXRGYWN0b3J5LmluOgorICAgICAg
ICAqIGRvbS9TY3JpcHRFeGVjdXRpb25Db250ZXh0Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0lu
c3BlY3RvckNvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQ29udHJv
bGxlcjo6Y3JlYXRlTGF6eUFnZW50cyk6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNw
ZWN0b3JJbmRleGVkREJBZ2VudC5jcHA6CisgICAgICAgICogaW5zcGVjdG9yL2FnZW50cy9JbnNw
ZWN0b3JJbmRleGVkREJBZ2VudC5oOgorICAgICAgICAqIGxvYWRlci9FbXB0eUNsaWVudHMuY3Bw
OgorICAgICAgICAqIHBhZ2UvRGF0YWJhc2VQcm92aWRlci5oOgorICAgICAgICAqIHBhZ2UvUGFn
ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpzZXRTZXNzaW9uSUQpOgorICAgICAgICAo
V2ViQ29yZTo6UGFnZTo6Y2xlYXJJREJDb25uZWN0aW9uKToKKyAgICAgICAgKiBwYWdlL1BhZ2Uu
aDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFscy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbHM6Om51bWJlck9mSURCVHJhbnNhY3Rpb25zIGNvbnN0KToKKyAgICAgICAgKiB0ZXN0
aW5nL0ludGVybmFscy5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmlkbDoKKyAgICAg
ICAgKiB3b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlckdsb2JhbFNjb3BlOjpXb3JrZXJHbG9iYWxTY29wZSk6CisgICAgICAgIChXZWJDb3JlOjpX
b3JrZXJHbG9iYWxTY29wZTo6cHJlcGFyZUZvckRlc3RydWN0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6Oldvcmtlckdsb2JhbFNjb3BlOjppZGJDb25uZWN0aW9uUHJveHkpOgorICAgICAgICAoV2Vi
Q29yZTo6V29ya2VyR2xvYmFsU2NvcGU6OnN0b3BJbmRleGVkRGF0YWJhc2UpOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyR2xvYmFsU2NvcGU6OnN1c3BlbmQpOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyR2xvYmFsU2NvcGU6OnJlc3VtZSk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJHbG9i
YWxTY29wZS5oOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6V29ya2VyTWVzc2FnaW5nUHJveHk6OnN0YXJ0V29ya2VyR2xvYmFs
U2NvcGUpOgorICAgICAgICAqIHdvcmtlcnMvV29ya2VyVGhyZWFkLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OldvcmtlclRocmVhZDo6V29ya2VyVGhyZWFkKToKKyAgICAgICAgKFdlYkNvcmU6Oldv
cmtlclRocmVhZDo6aWRiQ29ubmVjdGlvblByb3h5KToKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtl
clRocmVhZC5oOgorICAgICAgICAqIHdvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3Jr
ZXJUaHJlYWRQcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjppZGJDb25uZWN0aW9uUHJveHkp
OgorICAgICAgICAqIHdvcmtsZXRzL1dvcmtsZXRHbG9iYWxTY29wZS5oOgorCiAyMDIxLTAzLTI2
ICBUaW0gTmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CiAKICAgICAgICAgTWFrZSB0aGUgb2JqZWN0
LXBvc2l0aW9uIENTUyBwcm9wZXJ0eSBhbmltYXRhYmxlLgpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5pZGwKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWRE
YXRhYmFzZS5pZGwJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0RPTVdpbmRvdytJbmRleGVkRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBA
IC0yNyw3ICsyNyw2IEBACiAvLyBodHRwczovL3czYy5naXRodWIuaW8vSW5kZXhlZERCLyNmYWN0
b3J5LWludGVyZmFjZQogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1lcmdlZCB3aXRoIFdvcmtl
ckdsb2JhbFNjb3BlK0luZGV4ZWREYXRhYmFzZS5pZGwgaW50byBhIG5ldyBXaW5kb3dPcldvcmtl
ckdsb2JhbFNjb3BlK0luZGV4ZWREYXRhYmFzZS5pZGwgdG8gbWF0Y2ggdGhlIHNwZWMuCiBbCi0g
ICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBJbXBsZW1lbnRlZEJ5PURPTVdp
bmRvd0luZGV4ZWREYXRhYmFzZQogXSBwYXJ0aWFsIGludGVyZmFjZSBET01XaW5kb3cgewogICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBJREJGYWN0b3J5IGluZGV4ZWREQjsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5k
ZXhlZERhdGFiYXNlLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkRPTVdp
bmRvd0luZGV4ZWREYXRhYmFzZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRhYmFzZVByb3ZpZGVyLmgiCiAj
aW5jbHVkZSAiRG9jdW1lbnQuaCIKQEAgLTkzLDUgKzkxLDMgQEAgSURCRmFjdG9yeSogRE9NV2lu
ZG93SW5kZXhlZERhdGFiYXNlOjppbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFz
ZS5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9ET01XaW5kb3dJbmRleGVkRGF0YWJhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiRE9NV2luZG93UHJvcGVydHkuaCIKICNpbmNsdWRlICJTdXBwbGVtZW50YWJsZS5o
IgogCkBAIC01Myw1ICs1MSwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFjdGl2ZURPTU9iamVjdC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFjdGl2ZURPTU9iamVjdC5o
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJBY3RpdmVET01PYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMjksOCArMjksNiBAQAogI2lu
Y2x1ZGUgIlNjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5n
Lmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBjbGFzcyBJREJBY3RpdmVET01PYmplY3QgOiBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsK
QEAgLTkyLDUgKzkwLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMDUp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSURCQ3Vyc29yLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZS5oIgogI2lu
Y2x1ZGUgIklEQkdldFJlc3VsdC5oIgpAQCAtMzg4LDUgKzM4NiwzIEBAIHZvaWQgSURCQ3Vyc29y
OjpjbGVhclByZWZldGNoZWRSZWNvcmRzKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAkocmV2aXNpb24gMjc1MTA1KQorKysg
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiSURCQ3Vy
c29yRGlyZWN0aW9uLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgpAQCAtMTMzLDUgKzEz
MSwzIEBAIGlubGluZSBJREJDdXJzb3JEaXJlY3Rpb24gSURCQ3Vyc29yOjpkaXIKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5p
ZGwJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkN1cnNvci5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBb
Ci0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBDdXN0b21Ub0pTT2JqZWN0
LAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLApJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yRGlyZWN0aW9u
LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJD
dXJzb3JEaXJlY3Rpb24uaWRsCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JEaXJlY3Rpb24uaWRsCSh3b3JraW5nIGNvcHkpCkBA
IC0yNCw3ICsyNCw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJB
U0UsCiBdIGVudW0gSURCQ3Vyc29yRGlyZWN0aW9uIHsKICAgICAibmV4dCIsCiAgICAgIm5leHR1
bmlxdWUiLApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29y
V2l0aFZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
SURCQ3Vyc29yV2l0aFZhbHVlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0hlYXBJbmxpbmVzLmg+CiAjaW5jbHVkZSA8d3RmL0lz
b01hbGxvY0lubGluZXMuaD4KIApAQCAtNTgsNSArNTYsMyBAQCBJREJDdXJzb3JXaXRoVmFsdWU6
OklEQkN1cnNvcldpdGhWYWx1ZShJCiBJREJDdXJzb3JXaXRoVmFsdWU6On5JREJDdXJzb3JXaXRo
VmFsdWUoKSA9IGRlZmF1bHQ7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmgJKHJldmlzaW9uIDI3NTEw
NSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNp
bmNsdWRlIDx3dGYvVHlwZUNhc3RzLmg+CiAKQEAgLTUyLDUgKzUwLDMgQEAgcHJpdmF0ZToKIFNQ
RUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6SURCQ3Vyc29yV2l0aFZhbHVlKQog
ICAgIHN0YXRpYyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpJREJDdXJzb3ImIGN1cnNvcikg
eyByZXR1cm4gY3Vyc29yLmlzS2V5Q3Vyc29yV2l0aFZhbHVlKCk7IH0KIFNQRUNJQUxJWkVfVFlQ
RV9UUkFJVFNfRU5EKCkKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmlk
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJz
b3JXaXRoVmFsdWUuaWRsCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0y
NCw3ICsyNCw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0Us
CiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24sCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAg
ICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkRhdGFiYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZS5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklE
QkRhdGFiYXNlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
IkRPTVN0cmluZ0xpc3QuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRXZl
bnRRdWV1ZS5oIgpAQCAtNTAxLDUgKzQ5OSwzIEBAIHZvaWQgSURCRGF0YWJhc2U6OmRpZERlbGV0
ZUluZGV4SW5mbyhjb24KIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJEYXRhYmFzZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmgJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAjaW5jbHVkZSAiSURCQWN0aXZlRE9N
T2JqZWN0LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCkBAIC0xMzgsNSArMTM2
LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCRGF0YWJhc2UuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmlkbAkocmV2aXNpb24gMjc1MTA1KQorKysgU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNv
cHkpCkBAIC0yNSw3ICsyNSw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURf
REFUQUJBU0UsCiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9u
LAogICAgIEV4cG9zZWQ9KFdpbmRvdyxXb3JrZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZUlkZW50aWZpZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5jcHAJ
KHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QkRhdGFiYXNlSWRlbnRpZmllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUlkZW50aWZpZXIuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmln
aW4uaCIKICNpbmNsdWRlIDx3dGYvRmlsZVN5c3RlbS5oPgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4K
QEAgLTgwLDUgKzc4LDMgQEAgU3RyaW5nIElEQkRhdGFiYXNlSWRlbnRpZmllcjo6bG9nZ2luZ1N0
cgogI2VuZGlmCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2VJZGVudGlmaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VJZGVudGlmaWVyLmgJKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmll
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJDbGllbnRPcmlnaW4uaCIK
ICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbkRhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJp
bmdIYXNoLmg+CkBAIC0xNTIsNSArMTUwLDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0
czxXZWJDb3JlOjpJRAogdGVtcGxhdGU8PiBzdHJ1Y3QgRGVmYXVsdEhhc2g8V2ViQ29yZTo6SURC
RGF0YWJhc2VJZGVudGlmaWVyPiA6IFdlYkNvcmU6OklEQkRhdGFiYXNlSWRlbnRpZmllckhhc2gg
eyB9OwogCiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJh
c2VOYW1lQW5kVmVyc2lvblJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmNwcAko
cmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
RGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4
ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1l
QW5kVmVyc2lvblJlcXVlc3QuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9u
Q29udGV4dC5oIgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CkBAIC03OCw1ICs3
NiwzIEBAIHZvaWQgSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3Q6OnMKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZU5hbWVB
bmRWZXJzaW9uUmVxdWVzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmgJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFt
ZUFuZFZlcnNpb25SZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAog
I3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
IklEQkFjdGl2ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlTmFtZUFuZFZlcnNp
b24uaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTg0LDUgKzgyLDMg
QEAgaW5saW5lIElEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0OgogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJGYWN0b3J5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkZhY3RvcnkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJJREJCaW5kaW5n
VXRpbGl0aWVzLmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCkBAIC0xNzMsNSAr
MTcxLDMgQEAgdm9pZCBJREJGYWN0b3J5OjpnZXRBbGxEYXRhYmFzZU5hbWVzKFNjcgogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkZhY3RvcnkuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21h
IG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXhjZXB0
aW9uT3IuaCIKICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0
Zi9GdW5jdGlvbi5oPgpAQCAtODAsNSArNzgsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAko
cmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
RmFjdG9yeS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0g
ICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlv
biwKICAgICBFeHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgSURCRmFjdG9yeSB7
CkBAIC0zNyw3ICszNiw2IEBACiB9OwogCiBbCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRB
QkFTRSwKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKIF0gZGljdGlvbmFyeSBJREJEYXRhYmFz
ZUluZm8gewogICAgIERPTVN0cmluZyBuYW1lOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCR2V0QWxsUmVzdWx0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuY3BwCShyZXZpc2lvbiAyNzUx
MDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiSURCR2V0QWxsUmVzdWx0LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9Dcm9zc1RocmVhZENvcGllci5oPgogI2luY2x1ZGUgPHd0
Zi9IYXNoU2V0Lmg+CiAKQEAgLTg1LDUgKzgzLDMgQEAgVmVjdG9yPFN0cmluZz4gSURCR2V0QWxs
UmVzdWx0OjphbGxCbG9iRgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkdldEFsbFJlc3VsdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQkdldEFsbFJlc3VsdC5oCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgogI2luY2x1ZGUg
IklEQktleVBhdGguaCIKICNpbmNsdWRlICJJREJWYWx1ZS5oIgpAQCAtMTAwLDUgKzk4LDMgQEAg
Ym9vbCBJREJHZXRBbGxSZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZQogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkdldFJlc3VsdC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmNw
cAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCR2V0UmVzdWx0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkdldFJlc3VsdC5oIgogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBJREJHZXRSZXN1
bHQ6OmRhdGFGcm9tQnVmZmVyKFNoYXJlZEJ1ZmZlciYgYnVmZmVyKQpAQCAtNjQsNSArNjIsMyBA
QCB2b2lkIElEQkdldFJlc3VsdDo6c2V0VmFsdWUoSURCVmFsdWUmJiB2CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmgJ
KHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QkdldFJlc3VsdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEg
b25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJz
b3JSZWNvcmQuaCIKICNpbmNsdWRlICJJREJLZXkuaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgi
CkBAIC0xNTksNSArMTU3LDMgQEAgYm9vbCBJREJHZXRSZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBk
ZWNvZAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QkluZGV4LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJJbmRleC5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQkluZGV4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkluZGV4LmgiCiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIK
ICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZS5oIgpAQCAtNDI5
LDUgKzQyNywzIEBAIHZvaWQgSURCSW5kZXg6OmRlcmVmKCkKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmgJKHJldmlzaW9uIDI3NTEw
NSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmgJKHdvcmtp
bmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1cnNvci5oIgogI2luY2x1ZGUgIklE
QkluZGV4SW5mby5oIgogI2luY2x1ZGUgIklEQlJlcXVlc3QuaCIKQEAgLTExMCw1ICsxMDgsMyBA
QCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJJbmRleC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCSW5kZXguaWRsCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI5LDcg
KzI5LDYgQEAgdHlwZWRlZiAoRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZwogCiBbCiAg
ICAgQWN0aXZlRE9NT2JqZWN0LAotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAg
ICAgR2VuZXJhdGVJc1JlYWNoYWJsZT1JbXBsLAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAog
ICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvSURCS2V5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJLZXkuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCS2V5LmgiCiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleURhdGEuaCIKICNpbmNs
dWRlIDxKYXZhU2NyaXB0Q29yZS9BcnJheUJ1ZmZlclZpZXcuaD4KICNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9KU0FycmF5QnVmZmVyLmg+CkBAIC0xNjAsNSArMTU4LDMgQEAgU3RyaW5nIElEQktl
eTo6bG9nZ2luZ1N0cmluZygpIGNvbnN0CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktl
eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktl
eS5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXkuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSW5kZXhlZERC
LmgiCiAjaW5jbHVkZSAiVGhyZWFkU2FmZURhdGFCdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvRm9y
d2FyZC5oPgpAQCAtMjE1LDUgKzIxMywzIEBAIGlubGluZSBpbnQgY29tcGFyZUJpbmFyeUtleURh
dGEoY29uc3QgVGgKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJLZXlEYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJLZXlEYXRhLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJLZXlEYXRh
LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIktleWVkQ29k
aW5nLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0
Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlTnVtYmVycy5oPgpAQCAtNTA0LDUgKzUwMiwzIEBAIHNp
emVfdCBJREJLZXlEYXRhOjpzaXplKCkgY29uc3QKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlEYXRhLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5RGF0YS5oCShyZXZpc2lvbiAyNzUxMDUp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlEYXRhLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleS5oIgogI2luY2x1ZGUgPHd0Zi9T
dGRTZXQuaD4KICNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgpAQCAtMzA4LDUgKzMwNiwzIEBAIE9w
dGlvbmFsPElEQktleURhdGE+IElEQktleURhdGE6OmRlY29kZSgKIHVzaW5nIElEQktleURhdGFT
ZXQgPSBTdGRTZXQ8SURCS2V5RGF0YT47CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2Vu
ZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVBhdGguY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogCiAj
aW5jbHVkZSA8d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTI0OSw1ICsyNDcsMyBAQCBTdHJpbmcgbG9n
Z2luZ1N0cmluZyhjb25zdCBJREJLZXlQYXRoJiBwCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5oCShyZXZpc2lvbiAy
NzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CiAjaW5j
bHVkZSA8d3RmL1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAt
NTgsNSArNTYsMyBAQCBTdHJpbmcgbG9nZ2luZ1N0cmluZyhjb25zdCBJREJLZXlQYXRoJik7CiAj
ZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5jcHAJKHJldmlzaW9u
IDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIklEQktleVJhbmdlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJLZXku
aCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCkBAIC0xNjMsNSArMTYxLDMgQEAgRXhjZXB0aW9u
T3I8Ym9vbD4gSURCS2V5UmFuZ2U6OmluY2x1ZGVzKAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaAkocmV2aXNpb24gMjc1
MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNs
dWRlICJTY3JpcHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAt
NzcsNSArNzUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlSYW5nZS5pZGwJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQktleVJhbmdlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNiBA
QAogICovCiAKIFsKLSAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAogICAgIEltcGxl
bWVudGF0aW9uTGFja3NWVGFibGUsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50
ZXJmYWNlIElEQktleVJhbmdlIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQktleVJhbmdlRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysg
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIklEQktleVJhbmdlRGF0YS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJLZXkuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTI3LDUgKzEy
NSwzIEBAIFN0cmluZyBJREJLZXlSYW5nZURhdGE6OmxvZ2dpbmdTdHJpbmcoKSAKICNlbmRpZgog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
RGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QktleVJhbmdlRGF0YS5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZURhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCAr
MjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgogI2luY2x1ZGUgIklEQktleVJhbmdlLmgiCiAKQEAg
LTEzMyw1ICsxMzEsMyBAQCBib29sIElEQktleVJhbmdlRGF0YTo6ZGVjb2RlKERlY29kZXImIGRl
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2Jq
ZWN0U3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQk9iamVjdFN0b3JlLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0
U3RvcmUuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9N
U3RyaW5nTGlzdC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSURCQmluZGlu
Z1V0aWxpdGllcy5oIgpAQCAtNzY3LDUgKzc2NSwzIEBAIHZvaWQgSURCT2JqZWN0U3RvcmU6OmRl
cmVmKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJPYmplY3RTdG9yZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9iamVjdFN0b3JlLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlv
bk9yLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29yRGlyZWN0aW9uLmgiCkBAIC0xNDEsNSArMTM5LDMg
QEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbAkocmV2aXNpb24gMjc1MTA1KQorKysg
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yOSw3ICsyOSw2IEBAIHR5cGVkZWYgKERPTVN0cmluZyBvciBzZXF1ZW5j
ZTxET01TdHJpbmcKIAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKLSAgICBDb25kaXRpb25hbD1J
TkRFWEVEX0RBVEFCQVNFLAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKICAgICBKU0N1
c3RvbU1hcmtGdW5jdGlvbiwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbiwKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3Qu
Y3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJPcGVuREJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQk9wZW5EQlJlcXVlc3QuaCIKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0aW9uLmgiCiAj
aW5jbHVkZSAiRXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgpA
QCAtMjUxLDUgKzI0OSwzIEBAIHZvaWQgSURCT3BlbkRCUmVxdWVzdDo6c2V0SXNDb250ZXh0U3Vz
cGUKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJP
cGVuREJSZXF1ZXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCT3BlbkRCUmVxdWVzdC5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkK
QEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUg
IklEQlJlcXVlc3QuaCIKIApAQCAtNzcsNSArNzUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0Lmlk
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVu
REJSZXF1ZXN0LmlkbAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVzdC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcg
KzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAg
ICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAg
ICAgU2tpcFZUYWJsZVZhbGlkYXRpb24sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJSZWNvcmRJZGVudGlmaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVjb3JkSWRlbnRpZmllci5oCShyZXZpc2lvbiAyNzUx
MDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZWNvcmRJZGVudGlm
aWVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTMxLDggKzMxLDYgQEAKICNpbmNsdWRlIDx3dGYvUmVm
Q291bnRlZC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIElEQlJlY29yZElkZW50
aWZpZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxJREJSZWNvcmRJZGVudGlmaWVyPiB7CkBAIC03Myw1
ICs3MSwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklE
QlJlcXVlc3QuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
RE9NRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJFdmVudERpc3Bh
dGNoZXIuaCIKQEAgLTU3Miw1ICs1NzAsMyBAQCB2b2lkIElEQlJlcXVlc3Q6OmNsZWFyV3JhcHBl
cnMoKQogCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
UmVxdWVzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQlJlcXVlc3QuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCUmVxdWVzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBA
CiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJFdmVudFRhcmdldC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAi
SURCQWN0aXZlRE9NT2JqZWN0LmgiCkBAIC0xOTgsNSArMTk2LDMgQEAgcHJpdmF0ZToKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5p
ZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVx
dWVzdC5pZGwJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQlJlcXVlc3QuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw3ICsyOSw2IEBACiAK
IFsKICAgICBBY3RpdmVET01PYmplY3QsCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFT
RSwKICAgICBHZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rp
b24sCiAgICAgU2tpcFZUYWJsZVZhbGlkYXRpb24sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2
ZW50LmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCUmVxdWVzdENvbXBsZXRpb25FdmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2
LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXF1ZXN0Q29t
cGxldGlvbkV2ZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQx
LDUgKzM5LDMgQEAgSURCUmVxdWVzdENvbXBsZXRpb25FdmVudDo6SURCUmVxdWVzdENvbQogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3RD
b21wbGV0aW9uRXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmgJKHJldmlzaW9uIDI3NTEwNSkKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3RDb21wbGV0aW9uRXZl
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNs
dWRlICJJREJSZXF1ZXN0LmgiCiAKQEAgLTQ3LDUgKzQ1LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRy
YW5zYWN0aW9uLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCVHJhbnNhY3Rpb24uaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0aW9u
LmgiCiAjaW5jbHVkZSAiRE9NU3RyaW5nTGlzdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgpA
QCAtMTUxNSw1ICsxNTEzLDMgQEAgdWludDY0X3QgSURCVHJhbnNhY3Rpb246OmdlbmVyYXRlT3Bl
cmF0aQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QlRyYW5zYWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCVHJhbnNhY3Rpb24uaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotCiAjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJJREJBY3RpdmVET01P
YmplY3QuaCIKICNpbmNsdWRlICJJREJFcnJvci5oIgpAQCAtMjg5LDUgKzI4NywzIEBAIHByaXZh
dGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QlRyYW5zYWN0aW9uLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJUcmFuc2FjdGlvbi5pZGwJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAkod29ya2luZyBjb3B5
KQpAQCAtMjYsNyArMjYsNiBAQAogCiBbCiAgICAgQWN0aXZlRE9NT2JqZWN0LAotICAgIENvbmRp
dGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAg
U2tpcFZUYWJsZVZhbGlkYXRpb24sCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uTW9kZS5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJUcmFuc2FjdGlvbk1vZGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTEs
NSArNDksMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OklECiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJUcmFuc2FjdGlvbk1vZGUuaWRsCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5pZGwJKHJldmlz
aW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5z
YWN0aW9uTW9kZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBb
Ci0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKIF0gZW51bSBJREJUcmFuc2FjdGlv
bk1vZGUgewogICAgICJyZWFkb25seSIsCiAgICAgInJlYWR3cml0ZSIsCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuY3BwCShyZXZpc2lvbiAyNzUx
MDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJJREJWYWx1ZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJTZXJpYWxpemVkU2NyaXB0VmFsdWUuaCIKICNpbmNsdWRlIDx3dGYvQ3Jvc3NUaHJlYWRU
YXNrLmg+CiAKQEAgLTEwMiw1ICsxMDAsMyBAQCBzaXplX3QgSURCVmFsdWU6OnNpemUoKSBjb25z
dAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZh
bHVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VmFsdWUuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCVmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJh
Z21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiVGhy
ZWFkU2FmZURhdGFCdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApA
QCAtODYsNSArODQsMyBAQCBPcHRpb25hbDxJREJWYWx1ZT4gSURCVmFsdWU6OmRlY29kZShEZWNv
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmVy
c2lvbkNoYW5nZUV2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiSURCVmVyc2lvbkNoYW5nZUV2ZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVz
cGFjZSBXZWJDb3JlIHsKQEAgLTU4LDUgKzU2LDMgQEAgRXZlbnRJbnRlcmZhY2UgSURCVmVyc2lv
bkNoYW5nZUV2ZW50OjpldgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCShyZXZpc2lv
biAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9u
Q2hhbmdlRXZlbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21h
IG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXZlbnQu
aCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvT3B0
aW9uYWwuaD4KQEAgLTc5LDUgKzc3LDMgQEAgcHJpdmF0ZToKIFNQRUNJQUxJWkVfVFlQRV9UUkFJ
VFNfQkVHSU4oV2ViQ29yZTo6SURCVmVyc2lvbkNoYW5nZUV2ZW50KQogICAgIHN0YXRpYyBib29s
IGlzVHlwZShjb25zdCBXZWJDb3JlOjpFdmVudCYgZXZlbnQpIHsgcmV0dXJuIGV2ZW50LmlzVmVy
c2lvbkNoYW5nZUV2ZW50KCk7IH0KIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKLQotI2Vu
ZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRs
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw2IEBA
CiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgRXhwb3Nl
ZD0oV2luZG93LFdvcmtlcikKIF0gaW50ZXJmYWNlIElEQlZlcnNpb25DaGFuZ2VFdmVudCA6IEV2
ZW50IHsKICAgICBjb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgSURCVmVyc2lv
bkNoYW5nZUV2ZW50SW5pdCBldmVudEluaXREaWN0KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0luZGV4ZWREQi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0luZGV4ZWREQi5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JbmRleGVkREIuaAkod29ya2luZyBjb3B5KQpA
QCAtMjYsOCArMjYsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQotCiAjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIAogbmFtZXNwYWNlIFdlYkNv
cmUgewpAQCAtMTYxLDUgKzE1OSwzIEBAIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2Vi
Q29yZTo6SW4KIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gRU5BQkxFRChJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
V29ya2VyR2xvYmFsU2NvcGUrSW5kZXhlZERhdGFiYXNlLmlkbAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0
YWJhc2UuaWRsCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNv
cHkpCkBAIC0yNyw3ICsyNyw2IEBACiAvLyBodHRwczovL3czYy5naXRodWIuaW8vSW5kZXhlZERC
LyNmYWN0b3J5LWludGVyZmFjZQogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1lcmdlZCB3aXRo
IERPTVdpbmRvdytJbmRleGVkRGF0YWJhc2UuaWRsIGludG8gYSBuZXcgV2luZG93T3JXb3JrZXJH
bG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRsIHRvIG1hdGNoIHRoZSBzcGVjLgogWwotICAg
IENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywKICAgICBJbXBsZW1lbnRl
ZEJ5PVdvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlCiBdIHBhcnRpYWwgaW50ZXJmYWNl
IFdvcmtlckdsb2JhbFNjb3BlIHsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRl
IElEQkZhY3RvcnkgaW5kZXhlZERCOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL1dvcmtlckdsb2JhbFNjb3BlSW5kZXhl
ZERhdGFiYXNlLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNiw5ICsyNiw2IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKLQogI2luY2x1ZGUgIldvcmtl
ckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlLmgiCiAKICNpbmNsdWRlICJJREJDb25uZWN0aW9u
UHJveHkuaCIKQEAgLTgxLDUgKzc4LDMgQEAgSURCRmFjdG9yeSogV29ya2VyR2xvYmFsU2NvcGVJ
bmRleGVkRGF0YQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29w
ZUluZGV4ZWREYXRhYmFzZS5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFzZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKLQogI2luY2x1ZGUgIlN1cHBsZW1lbnRhYmxl
LmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTU5LDUgKzU3LDMgQEAg
cHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblByb3h5LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblBy
b3h5LmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Qcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2
LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9u
UHJveHkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURC
Q3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiSURCRGF0
YWJhc2VOYW1lQW5kVmVyc2lvbi5oIgpAQCAtNjQ4LDUgKzY0NiwzIEBAIHZvaWQgSURCQ29ubmVj
dGlvblByb3h5OjpzZXRDb250ZXh0U3VzcGUKIAogfSAvLyBuYW1lc2FwY2UgSURCQ2xpZW50CiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25u
ZWN0aW9uUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblByb3h5LmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uUHJveHku
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2Vy
dmVyLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3QuaCIKICNp
bmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTE4MSw1ICsxNzksMyBAQCBwcml2
YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJDbGllbnQKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNv
bm5lY3Rpb25Ub1NlcnZlci5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgogI2luY2x1ZGUgIklEQkRhdGFi
YXNlLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvbi5oIgpAQCAtNTIwLDUg
KzUxOCwzIEBAIHZvaWQgSURCQ29ubmVjdGlvblRvU2VydmVyOjpkaWRHZXRBbGxEYXQKIAogfSAv
LyBuYW1lc3BhY2UgSURCQ2xpZW50CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2Vy
dmVyLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
OCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVj
dGlvblRvU2VydmVyRGVsZWdhdGUuaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIu
aCIKQEAgLTE1NSw1ICsxNTMsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJDbGll
bnQKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lE
QkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRl
LmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0KICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3
dGYvV2Vha1B0ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtOTMsNSAr
OTEsMyBAQCBwdWJsaWM6CiAKIH0gLy8gbmFtZXNwYWNlIElEQkNsaWVudAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRp
b24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2Ns
aWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJUcmFuc2FjdGlvbk9wZXJhdGlvbi5oIgogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9IZWFwSW5saW5lcy5oPgogCkBAIC01MCw1ICs0OCwzIEBAIFRyYW5zYWN0aW9uT3BlcmF0
aW9uOjpUcmFuc2FjdGlvbk9wZXJhdGkKIAogfSAvLyBuYW1lc3BhY2UgSURCQ2xpZW50CiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlv
bk9wZXJhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRp
b24uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVxdWVzdC5oIgog
I2luY2x1ZGUgIklEQlJlcXVlc3REYXRhLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlm
aWVyLmgiCkBAIC0xODYsNSArMTg0LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURC
Q2xpZW50CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JREJCYWNraW5nU3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvSURCQmFja2luZ1N0b3JlLmgJKHJldmlzaW9uIDI3NTEwNSkKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJCYWNraW5nU3RvcmUu
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJbmZvLmgi
CiAjaW5jbHVkZSAiSURCRXJyb3IuaCIKICNpbmNsdWRlICJJbmRleEtleS5oIgpAQCAtMTA2LDUg
KzEwNCwzIEBAIHByb3RlY3RlZDoKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9u
VG9DbGllbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRv
Q2xpZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oIgogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9u
LmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgiCiAKQEAgLTIxNCw1
ICsyMTIsMyBAQCB2b2lkIElEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Y29ubmVjdGlvblRvCiAKIH0g
Ly8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0Ns
aWVudC5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub0NsaWVudERlbGVnYXRlLmgiCiAjaW5jbHVk
ZSA8d3RmL0hhc2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC05NCw1ICs5MiwzIEBA
IHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50RGVs
ZWdhdGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaAkocmV2aXNpb24gMjc1MTA1KQor
KysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25U
b0NsaWVudERlbGVnYXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklE
QlJlc291cmNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CkBAIC03Nyw1ICs3NSwzIEBAIHB1YmxpYzoKIAogfSAv
LyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbi5jcHAJ
KHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9JREJTZXJpYWxpemF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIsMTEgKzIyLDEw
IEBACiAgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KKwogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlNlcmlhbGl6YXRpb24u
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5RGF0
YS5oIgogI2luY2x1ZGUgIklEQktleVBhdGguaCIKICNpbmNsdWRlICJLZXllZENvZGluZy5oIgpA
QCAtNDE5LDUgKzQxOCwzIEBAIGJvb2wgZGVzZXJpYWxpemVJREJLZXlEYXRhKGNvbnN0IHVpbnQ4
X3QKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvSURCU2VyaWFsaXphdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmgJKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0
aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAK
LSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleVBhdGguaCIK
ICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKIApAQCAtNDEsNSArMzksMyBAQCBSZWZQdHI8U2hh
cmVkQnVmZmVyPiBzZXJpYWxpemVJREJLZXlEYXRhCiBib29sIGRlc2VyaWFsaXplSURCS2V5RGF0
YShjb25zdCB1aW50OF90KiBidWZmZXIsIHNpemVfdCBidWZmZXJTaXplLCBJREJLZXlEYXRhJik7
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lE
QlNlcmlhbGl6YXRpb25Db250ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNvbnRleHQuY3BwCShyZXZp
c2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
SURCU2VyaWFsaXphdGlvbkNvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw4ICszMSw2
IEBACiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNPYmplY3RJbmxpbmVzLmg+CiAjaW5jbHVk
ZSA8cGFsL1Nlc3Npb25JRC5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAogbmFtZXNwYWNlIElEQlNlcnZlciB7CkBAIC0xMDQsNSArMTAy
LDMgQEAgSURCU2VyaWFsaXphdGlvbkNvbnRleHQ6OklEQlNlcmlhbGl6YXRpbwogCiB9IC8vIG5h
bWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlv
bkNvbnRleHQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNvbnRleHQuaAkocmV2aXNpb24gMjc1MTA1KQorKysg
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlhbGl6YXRpb25D
b250ZXh0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNl
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkpTSURCU2VyaWFs
aXphdGlvbkdsb2JhbE9iamVjdC5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1N0cm9uZ0lu
bGluZXMuaD4KICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9TdHJ1Y3R1cmVJbmxpbmVzLmg+CkBA
IC02MSw1ICs1OSwzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVy
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvSURCU2VydmVyLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2
LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJTZXJ2ZXIuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVxdWVzdERh
dGEuaCIKICNpbmNsdWRlICJJREJSZXN1bHREYXRhLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgpA
QCAtNzk3LDUgKzc5NSwzIEBAIHZvaWQgSURCU2VydmVyOjpzdG9wRGF0YWJhc2VBY3Rpdml0aWVz
T24KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmgJKHJldmlzaW9u
IDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJT
ZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlv
blRvQ2xpZW50LmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJZGVudGlmaWVyLmgiCiAjaW5jbHVk
ZSAiU3RvcmFnZVF1b3RhTWFuYWdlci5oIgpAQCAtMTM5LDUgKzEzNywzIEBAIHByaXZhdGU6CiAK
IH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNw
cAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL0luZGV4VmFsdWVFbnRyeS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmRleFZhbHVlRW50cnkuaCIKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0yMjgsNSArMjI2LDMgQEAgSW5kZXhWYWx1ZUVu
dHJ5OjpJdGVyYXRvciBJbmRleFZhbHVlRW50cgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4
VmFsdWVFbnRyeS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9JbmRleFZhbHVlRW50cnkuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVFbnRyeS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAKIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKQEAgLTk4LDUgKzk2LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2Ug
SURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9JbmRleFZhbHVlU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlU3RvcmUuY3BwCShyZXZpc2lvbiAyNzUx
MDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1
ZVN0b3JlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNv
bmZpZy5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgogCi0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJFcnJvci5oIgogI2luY2x1ZGUgIklEQktleVJh
bmdlRGF0YS5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKQEAgLTQxNSw1ICs0MTMsMyBAQCBTdHJp
bmcgSW5kZXhWYWx1ZVN0b3JlOjpsb2dnaW5nU3RyaW5nKCkgCiAKIH0gLy8gbmFtZXNwYWNlIElE
QlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvSW5kZXhWYWx1ZVN0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVTdG9yZS5oCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3Jl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1cnNvckluZm8uaCIK
ICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSW5kZXhWYWx1ZUVudHJ5LmgiCkBA
IC0xMTQsNSArMTEyLDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlC
YWNraW5nU3RvcmVUcmFuc2FjdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmNw
cAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1lbW9yeUJh
Y2tpbmdTdG9yZVRyYW5zYWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5oIgogI2luY2x1ZGUgIklEQlZhbHVlLmgiCiAj
aW5jbHVkZSAiSW5kZXhlZERCLmgiCkBAIC0yOTIsNSArMjkwLDMgQEAgdm9pZCBNZW1vcnlCYWNr
aW5nU3RvcmVUcmFuc2FjdGlvbjo6ZmluaQogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJh
Y2tpbmdTdG9yZVRyYW5zYWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmgJKHJl
dmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlCYWNraW5nU3RvcmVUcmFuc2FjdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4
ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
Ci0KICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgi
CiAjaW5jbHVkZSAiSURCVHJhbnNhY3Rpb25JbmZvLmgiCkBAIC0xMDQsNSArMTAyLDMgQEAgcHJp
dmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlDdXJzb3IuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlDdXJzb3Iu
Y3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5Q3Vyc29yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZp
ZXIuaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ry
b3llZC5oPgpAQCAtNjEsNSArNTksMyBAQCBNZW1vcnlDdXJzb3IqIE1lbW9yeUN1cnNvcjo6Y3Vy
c29yRm9ySWRlCiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5Q3Vyc29yLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUN1cnNv
ci5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5Q3Vyc29yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQkN1cnNvckluZm8uaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTUsNSArNTMs
MyBAQCBwcm90ZWN0ZWQ6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0
b3JlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9y
ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJNZW1vcnlJREJCYWNraW5nU3RvcmUuaCIKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIklE
QkdldEFsbFJlY29yZHNEYXRhLmgiCiAjaW5jbHVkZSAiSURCR2V0UmVjb3JkRGF0YS5oIgpAQCAt
NjM1LDUgKzYzMywzIEBAIHZvaWQgTWVtb3J5SURCQmFja2luZ1N0b3JlOjpjbG9zZSgpCiAKIH0g
Ly8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdT
dG9yZS5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkJhY2tpbmdTdG9yZS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNl
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgIklEQlJlc291cmNlSWRlbnRpZmllci5oIgpAQCAtMTA3
LDUgKzEwNSwzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXgu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlJbmRleC5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJNZW1vcnlJbmRl
eC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJFcnJv
ci5oIgogI2luY2x1ZGUgIklEQkdldEFsbFJlc3VsdC5oIgogI2luY2x1ZGUgIklEQkdldFJlc3Vs
dC5oIgpAQCAtMjY1LDUgKzI2MywzIEBAIE1lbW9yeUluZGV4Q3Vyc29yKiBNZW1vcnlJbmRleDo6
bWF5YmVPcGUKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5o
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5SW5kZXguaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
SURCSW5kZXhJbmZvLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTEwOCw1ICsxMDYsMyBAQCBwcml2YXRlOgogCiB9IC8v
IG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL01lbW9yeUluZGV4Q3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5SW5kZXhDdXJzb3IuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5m
by5oIgogI2luY2x1ZGUgIklEQkdldFJlc3VsdC5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVTdG9y
ZS5oIgpAQCAtMjIyLDUgKzIyMCwzIEBAIHZvaWQgTWVtb3J5SW5kZXhDdXJzb3I6OmluZGV4VmFs
dWVDaGFuZ2UKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleEN1cnNvci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJ
bmRleEN1cnNvci5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVT
dG9yZS5oIgogI2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgpAQCAtNTcsNSArNTUsMyBAQCBwcml2
YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2Jq
ZWN0U3RvcmUuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5T2Jq
ZWN0U3RvcmUuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
SURCQmluZGluZ1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIklEQkVycm9yLmgiCiAjaW5jbHVkZSAi
SURCR2V0QWxsUmVzdWx0LmgiCkBAIC01MTcsNSArNTE1LDMgQEAgdm9pZCBNZW1vcnlPYmplY3RT
dG9yZTo6cmVuYW1lSW5kZXgoTWVtbwogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVj
dFN0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL01lbW9yeU9iamVjdFN0b3JlLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAi
SURCT2JqZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSAiSW5kZXhLZXkuaCIKQEAgLTE0MSw1ICsx
MzksMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3Jl
Q3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3Rv
cmVDdXJzb3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCR2V0UmVzdWx0LmgiCiAjaW5j
bHVkZSAiTG9nZ2luZy5oIgogI2luY2x1ZGUgIk1lbW9yeU9iamVjdFN0b3JlLmgiCkBAIC0zNTIs
NSArMzUwLDMgQEAgdm9pZCBNZW1vcnlPYmplY3RTdG9yZUN1cnNvcjo6aXRlcmF0ZShjbwogCiB9
IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0
b3JlQ3Vyc29yLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZUN1cnNvci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCS2V5
RGF0YS5oIgogI2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgpAQCAtNjksNSArNjcsMyBAQCBwcml2
YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
LQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0
ZUlEQkJhY2tpbmdTdG9yZS5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiU1FMaXRlSURCQmFja2luZ1N0b3JlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJDdXJz
b3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCR2V0QWxsUmVjb3Jkc0RhdGEuaCIKQEAgLTMwODUsNSAr
MzA4MywzIEBAIGJvb2wgU1FMaXRlSURCQmFja2luZ1N0b3JlOjpoYXNUcmFuc2FjdGkKIAogfSAv
LyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQmFja2luZ1N0
b3JlLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
OCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiSURCQmFja2luZ1N0b3JlLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJ
ZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJbmZvLmgiCkBAIC0yMjgsNSArMjI2
LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9T
UUxpdGVJREJDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQ3Vyc29yLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNRTGl0
ZUlEQkN1cnNvci5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCR2V0UmVzdWx0LmgiCiAjaW5jbHVkZSAi
SURCU2VyaWFsaXphdGlvbi5oIgpAQCAtNzA3LDUgKzcwNSwzIEBAIGludDY0X3QgU1FMaXRlSURC
Q3Vyc29yOjpjdXJyZW50UmVjb3JkUm8KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJD
dXJzb3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvU1FMaXRlSURCQ3Vyc29yLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaAkod29ya2luZyBj
b3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29yUmVjb3JkLmgiCiAjaW5jbHVkZSAi
SURCSW5kZXhJbmZvLmgiCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgpAQCAtMTQzLDUgKzE0MSwz
IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24u
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9TUUxpdGVJREJUcmFuc2FjdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNp
bmNsdWRlICJTUUxpdGVJREJUcmFuc2FjdGlvbi5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSW5kZXhlZERC
LmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgpAQCAtMjI1LDUgKzIyMywzIEBAIHZvaWQgU1FMaXRl
SURCVHJhbnNhY3Rpb246OmFkZFJlbW92ZWRCbG8KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVy
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxp
dGVJREJUcmFuc2FjdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5oCShyZXZpc2lvbiAyNzUxMDUp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJh
bnNhY3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRXJyb3Iu
aCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJUcmFu
c2FjdGlvbkluZm8uaCIKQEAgLTk0LDUgKzkyLDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9TZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU2VydmVyT3BlbkRCUmVxdWVzdC5jcHAJKHJl
dmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9TZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNlcnZlck9wZW5EQlJlcXVlc3QuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVzdWx0RGF0
YS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04Nyw1ICs4NSwzIEBAIHZvaWQgU2VydmVy
T3BlbkRCUmVxdWVzdDo6Y29ubmVjdGlvbkNsb3MKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVy
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2
ZXJPcGVuREJSZXF1ZXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL1NlcnZlck9wZW5EQlJlcXVlc3QuaAkocmV2aXNpb24gMjc1MTA1KQor
KysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NlcnZlck9wZW5EQlJl
cXVlc3QuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlv
blRvQ2xpZW50LmgiCiAjaW5jbHVkZSAiSURCUmVxdWVzdERhdGEuaCIKICNpbmNsdWRlIDx3dGYv
SGFzaFNldC5oPgpAQCAtNzQsNSArNzIsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJ
REJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL1VuaXF1ZUlEQkRhdGFiYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwCShyZXZpc2lvbiAy
NzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVl
SURCRGF0YWJhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2UuaCIKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGllcy5oIgog
I2luY2x1ZGUgIklEQkN1cnNvckluZm8uaCIKICNpbmNsdWRlICJJREJHZXRBbGxSZWNvcmRzRGF0
YS5oIgpAQCAtMTI1MSw1ICsxMjQ5LDMgQEAgUmVmUHRyPFNlcnZlck9wZW5EQlJlcXVlc3Q+IFVu
aXF1ZUlEQkRhdAogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1
ZUlEQkRhdGFiYXNlLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0KICNpbmNsdWRlICJJREJCYWNraW5nU3RvcmUuaCIKICNpbmNsdWRlICJJREJEYXRh
YmFzZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIKQEAgLTE3MSw1
ICsxNjksMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFi
YXNlQ29ubmVjdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5jcHAJKHJldmlzaW9u
IDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9Vbmlx
dWVJREJEYXRhYmFzZUNvbm5lY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25u
ZWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklE
QkNvbm5lY3Rpb25Ub0NsaWVudC5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uSW5mby5oIgog
I2luY2x1ZGUgIkxvZ2dpbmcuaCIKQEAgLTIzMyw1ICsyMzEsMyBAQCB2b2lkIFVuaXF1ZUlEQkRh
dGFiYXNlQ29ubmVjdGlvbjo6ZGVsZXRlCiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURC
RGF0YWJhc2VDb25uZWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5oCShyZXZpc2lv
biAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5p
cXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQlNlcnZlci5oIgogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNlLmgiCiAjaW5j
bHVkZSA8d3RmL0hhc2hNYXAuaD4KQEAgLTEwMSw1ICs5OSwzIEBAIHByaXZhdGU6CiAKIH0gLy8g
bmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRh
dGFiYXNlVHJhbnNhY3Rpb24uY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIK
ICNpbmNsdWRlICJVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkl0ZXJhdGVDdXJzb3JEYXRhLmgiCiAj
aW5jbHVkZSAiSURCUmVzdWx0RGF0YS5oIgogI2luY2x1ZGUgIklEQlNlcnZlci5oIgpAQCAtNDE1
LDUgKzQxMywzIEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbjo6ZGlkQWMKIAog
fSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlE
QkRhdGFiYXNlVHJhbnNhY3Rpb24uaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24u
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRXJyb3IuaCIKICNpbmNs
dWRlICJJREJUcmFuc2FjdGlvbkluZm8uaCIKICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0xMDYs
NSArMTA0LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZv
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFy
ZWQvSURCQ3Vyc29ySW5mby5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkN1
cnNvckluZm8uaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
SURCRGF0YWJhc2UuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbi5oIgogI2luY2x1ZGUgIklu
ZGV4ZWREQi5oIgpAQCAtMTEzLDUgKzExMSwzIEBAIFN0cmluZyBJREJDdXJzb3JJbmZvOjpsb2dn
aW5nU3RyaW5nKCkgY28KICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvckluZm8uaAkocmV2aXNp
b24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lE
QkN1cnNvckluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21h
IG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5
UmFuZ2VEYXRhLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCiAKQEAgLTEz
Myw1ICsxMzEsMyBAQCBib29sIElEQkN1cnNvckluZm86OmRlY29kZShEZWNvZGVyJiBkZWNvCiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lE
QkN1cnNvclJlY29yZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JSZWNvcmQuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvclJlY29yZC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVk
ZSAiSURCVmFsdWUuaCIKIApAQCAtNzEsNSArNjksMyBAQCBpbmxpbmUgSURCQ3Vyc29yUmVjb3Jk
IElEQkN1cnNvclJlY29yZDo6CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHAJ
KHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3No
YXJlZC9JREJEYXRhYmFzZUluZm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2IEBA
CiAKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBJREJEYXRhYmFzZUluZm86
OklEQkRhdGFiYXNlSW5mbygpCkBAIC0xNzcsNSArMTc1LDMgQEAgdm9pZCBJREJEYXRhYmFzZUlu
Zm86OnNldE1heEluZGV4SUQodWludAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZUluZm8uaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmgJ
KHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3No
YXJlZC9JREJEYXRhYmFzZUluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAog
CiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVk
ZSAiSURCT2JqZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KIApAQCAt
MTE2LDUgKzExNCwzIEBAIGJvb2wgSURCRGF0YWJhc2VJbmZvOjpkZWNvZGUoRGVjb2RlciYgZGUK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQv
SURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmgJKHJl
dmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBA
IC02Nyw1ICs2NSwzIEBAIGlubGluZSBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uIElEQkRhdGEK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQv
SURCRXJyb3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJFcnJvci5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJFcnJv
ci5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJET01FeGNl
cHRpb24uaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNjYsNSArNjQsMyBAQCBSZWZQdHI8
RE9NRXhjZXB0aW9uPiBJREJFcnJvcjo6dG9ET01FeGNlCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmgJKHJl
dmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJFcnJvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEg
b25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJET01FeGNl
cHRpb24uaCIKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+CkBAIC05OCw1ICs5NiwzIEBAIGJvb2wgSURCRXJyb3I6OmRlY29kZShEZWNv
ZGVyJiBkZWNvZGVyLCAKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0
YS5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2
LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJHZXRBbGxSZWNv
cmRzRGF0YS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJ
REJLZXlSYW5nZURhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51
bWJlcnMuaD4KIApAQCAtNTAsNSArNDgsMyBAQCBTdHJpbmcgSURCR2V0QWxsUmVjb3Jkc0RhdGE6
OmxvZ2dpbmdTdHJpCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0Rh
dGEuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2hhcmVkL0lEQkdldEFsbFJlY29yZHNEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDgg
KzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5o
PgogCkBAIC04NCw1ICs4MiwzIEBAIGJvb2wgSURCR2V0QWxsUmVjb3Jkc0RhdGE6OmRlY29kZShE
ZWNvZGUKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCR2V0UmVjb3JkRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuY3BwCShyZXZpc2lvbiAy
NzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0
UmVjb3JkRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJHZXRSZWNvcmREYXRhLmgiCiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5oIgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC00Nyw1ICs0NSwzIEBAIFN0cmluZyBJREJHZXRSZWNvcmREYXRh
Ojpsb2dnaW5nU3RyaW5nKCkKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJHZXRSZWNvcmREYXRhLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEu
aAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0lEQkdldFJlY29yZERhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSURCS2V5UmFuZ2VEYXRhLmgiCiAjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIApA
QCAtNzEsNSArNjksMyBAQCBib29sIElEQkdldFJlY29yZERhdGE6OmRlY29kZShEZWNvZGVyJiBk
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVk
L0lEQkluZGV4SW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkluZGV4SW5mby5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5j
bHVkZSAiSURCSW5kZXhJbmZvLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlTnVtYmVycy5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CkBAIC02OSw1ICs2NywzIEBAIFN0cmluZyBJREJJbmRleEluZm86OmNvbmRl
bnNlZExvZ2dpbmdTdHIKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSW5kZXhJbmZvLmgJKHJldmlzaW9u
IDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJ
bmRleEluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5UGF0
aC5oIgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0xMDAsNSArOTgsMyBA
QCBib29sIElEQkluZGV4SW5mbzo6ZGVjb2RlKERlY29kZXImIGRlY29kCiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkl0ZXJhdGVDdXJz
b3JEYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRh
dGEuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw2IEBACiAjaW5jbHVkZSAiSURCSXRl
cmF0ZUN1cnNvckRhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51
bWJlcnMuaD4KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKIElEQkl0ZXJhdGVDdXJzb3JEYXRhIElEQkl0ZXJhdGVDdXJzb3JEYXRhOjppc29s
YXRlZENvcHkoKSBjb25zdApAQCAtNDYsNSArNDQsMyBAQCBTdHJpbmcgSURCSXRlcmF0ZUN1cnNv
ckRhdGE6OmxvZ2dpbmdTdHJpCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1
cnNvckRhdGEuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIklEQktleURhdGEuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtODQsNSArODIsMyBAQCBib29sIElEQkl0ZXJhdGVDdXJzb3JEYXRhOjpkZWNvZGUoRGVjb2Rl
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVk
L0lEQk9iamVjdFN0b3JlSW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5jcHAJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmpl
Y3RTdG9yZUluZm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw2IEBACiAjaW5jbHVk
ZSAiSURCT2JqZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRl
ci5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogSURCT2JqZWN0U3RvcmVJbmZvOjpJREJPYmplY3RTdG9yZUluZm8oKQpAQCAtMTQ3LDUg
KzE0NSwzIEBAIFN0cmluZyBJREJPYmplY3RTdG9yZUluZm86OmNvbmRlbnNlZExvZ2cKICNlbmRp
ZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9J
REJPYmplY3RTdG9yZUluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSURCT2JqZWN0U3RvcmVJbmZvLmgJKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9y
ZUluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCSW5kZXhJbmZv
LmgiCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CkBA
IC0xMDYsNSArMTA0LDMgQEAgYm9vbCBJREJPYmplY3RTdG9yZUluZm86OmRlY29kZShEZWNvZGVy
JgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJSZXF1ZXN0RGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmNwcAkocmV2aXNpb24gMjc1MTA1KQor
KysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRh
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIklEQlJlcXVlc3REYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub1NlcnZlci5oIgogI2luY2x1ZGUgIklE
QkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiSURCT3BlbkRCUmVxdWVzdC5oIgpAQCAtMTU3LDUgKzE1
NSwzIEBAIHVpbnQ2NF90IElEQlJlcXVlc3REYXRhOjpyZXF1ZXN0ZWRWZXJzaW8KIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVxdWVz
dERhdGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCUmVxdWVzdERhdGEuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmllci5oIgogI2luY2x1
ZGUgIklEQlJlc291cmNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIkluZGV4ZWREQi5oIgpAQCAt
MTg0LDUgKzE4MiwzIEBAIGJvb2wgSURCUmVxdWVzdERhdGE6OmRlY29kZShEZWNvZGVyJiBkZWMK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQv
SURCUmVzb3VyY2VJZGVudGlmaWVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3VyY2VJZGVudGlmaWVyLmNwcAkocmV2aXNp
b24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lE
QlJlc291cmNlSWRlbnRpZmllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlv
blRvQ2xpZW50LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCiAjaW5jbHVk
ZSAiSURCUmVxdWVzdC5oIgpAQCAtMTA2LDUgKzEwNCwzIEBAIFN0cmluZyBJREJSZXNvdXJjZUlk
ZW50aWZpZXI6OmxvZ2dpbmdTdHIKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3Vy
Y2VJZGVudGlmaWVyLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiUHJvY2Vzc0lkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3
dGYvdGV4dC9TdHJpbmdIYXNoLmg+CiAKQEAgLTE1Myw1ICsxNTEsMyBAQCBpbmxpbmUgV2ViQ29y
ZTo6SURCQ29ubmVjdGlvbklkZW50aWZpZXIgCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc3VsdERhdGEuY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCUmVzdWx0RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXN1bHREYXRhLmgiCiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNlLmgi
CiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiVW5p
cXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5oIgpAQCAtMjQ2LDUgKzI0NCwzIEBAIGNvbnN0IElE
QkdldEFsbFJlc3VsdCYgSURCUmVzdWx0RGF0YTo6Z2UKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXN1bHRE
YXRhLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJSZXN1bHREYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkRhdGFiYXNlSW5mby5oIgogI2luY2x1ZGUgIklEQkVycm9yLmgiCiAjaW5jbHVk
ZSAiSURCR2V0QWxsUmVzdWx0LmgiCkBAIC0yNjMsNSArMjYxLDMgQEAgdGVtcGxhdGU8PiBzdHJ1
Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpJRAogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlv
bkluZm8uY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCVHJhbnNhY3Rpb25JbmZvLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0
aW9uSW5mby5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJ
REJUcmFuc2FjdGlvbi5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xMTksNSArMTE3LDMg
QEAgU3RyaW5nIElEQlRyYW5zYWN0aW9uSW5mbzo6bG9nZ2luZ1N0cmluZwogI2VuZGlmCiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlRyYW5z
YWN0aW9uSW5mby5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlRyYW5zYWN0aW9uSW5mby5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIK
ICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJUcmFuc2Fj
dGlvbk1vZGUuaCIKQEAgLTEyOSw1ICsxMjcsMyBAQCBib29sIElEQlRyYW5zYWN0aW9uSW5mbzo6
ZGVjb2RlKERlY29kZXImCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0luZGV4S2V5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwCShyZXZpc2lvbiAyNzUxMDUp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAj
aW5jbHVkZSAiSW5kZXhLZXkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIEluZGV4S2V5OjpJbmRleEtleSgpCkBAIC04NSw1ICs4Mywz
IEBAIFZlY3RvcjxJREJLZXlEYXRhPiBJbmRleEtleTo6bXVsdGlFbnRyeSgKIH0KIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5k
ZXhLZXkuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2hhcmVkL0luZGV4S2V5LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQktleURhdGEuaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0
Zi9WZWN0b3IuaD4KQEAgLTUyLDUgKzUwLDMgQEAgcHJpdmF0ZToKIHR5cGVkZWYgSGFzaE1hcDx1
aW50NjRfdCwgSW5kZXhLZXk+IEluZGV4SURUb0luZGV4S2V5TWFwOwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9JREJCaW5k
aW5nVXRpbGl0aWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNiBAQAogCiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKIAogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIK
QEAgLTUyMiw1ICs1MjAsMyBAQCBPcHRpb25hbDxKU0M6OkpTVmFsdWU+IGRlc2VyaWFsaXplSURC
VmFsCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSURCQmluZGlu
Z1V0aWxpdGllcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lE
QkJpbmRpbmdVdGlsaXRpZXMuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxpdGllcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4
ICsyNiw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
Ci0KICNpbmNsdWRlICJJREJLZXlQYXRoLmgiCiAjaW5jbHVkZSAiSW5kZXhLZXkuaCIKICNpbmNs
dWRlIDx3dGYvRm9yd2FyZC5oPgpAQCAtNjYsNSArNjQsMyBAQCBKU0M6OkpTVmFsdWUgdG9KUyhK
U0M6OkpTR2xvYmFsT2JqZWN0KiwgCiAKIE9wdGlvbmFsPEpTQzo6SlNWYWx1ZT4gZGVzZXJpYWxp
emVJREJWYWx1ZVdpdGhLZXlJbmplY3Rpb24oSlNDOjpKU0dsb2JhbE9iamVjdCYsIGNvbnN0IElE
QlZhbHVlJiwgY29uc3QgSURCS2V5RGF0YSYsIGNvbnN0IE9wdGlvbmFsPElEQktleVBhdGg+Jik7
CiB9Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oCShyZXZp
c2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRJ
bmRleGVkREIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGlu
Z1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIklETFR5cGVzLmgiCiAjaW5jbHVkZSAiSlNET01Db252
ZXJ0QmFzZS5oIgpAQCAtNjcsNSArNjUsMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBKU0NvbnZlcnRl
cjxJRExJREJWYWx1CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRl
eDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNw
cAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01H
bG9iYWxPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMzYsMTAgKzIzNiw5IEBAIFNjcmlw
dEV4ZWN1dGlvbkNvbnRleHQqIEpTRE9NR2xvYmFsT2JqZWMKICAgICAgICAgcmV0dXJuIGpzQ2Fz
dDxjb25zdCBKU1dvcmtlckdsb2JhbFNjb3BlQmFzZSo+KHRoaXMpLT5zY3JpcHRFeGVjdXRpb25D
b250ZXh0KCk7CiAgICAgaWYgKGluaGVyaXRzPEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZT4odm0o
KSkpCiAgICAgICAgIHJldHVybiBqc0Nhc3Q8Y29uc3QgSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNl
Kj4odGhpcyktPnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKICAgICBpZiAoaW5oZXJpdHM8SlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0
Pih2bSgpKSkKICAgICAgICAgcmV0dXJuIGpzQ2FzdDxjb25zdCBKU0lEQlNlcmlhbGl6YXRpb25H
bG9iYWxPYmplY3QqPih0aGlzKS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwotI2VuZGlmCisK
ICAgICBkYXRhTG9nKCJVbmV4cGVjdGVkIGdsb2JhbCBvYmplY3Q6ICIsIEpTVmFsdWUodGhpcyks
ICJcbiIpOwogICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIG51
bGxwdHI7CkBAIC00NzUsMTAgKzQ3NCw5IEBAIHN0YXRpYyBTY3JpcHRNb2R1bGVMb2FkZXIqIHNj
cmlwdE1vZHVsZUwKICAgICAgICAgcmV0dXJuICZqc0Nhc3Q8Y29uc3QgSlNXb3JrZXJHbG9iYWxT
Y29wZUJhc2UqPihnbG9iYWxPYmplY3QpLT53cmFwcGVkKCkubW9kdWxlTG9hZGVyKCk7CiAgICAg
aWYgKGdsb2JhbE9iamVjdC0+aW5oZXJpdHM8SlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlPih2bSkp
CiAgICAgICAgIHJldHVybiAmanNDYXN0PGNvbnN0IEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSo+
KGdsb2JhbE9iamVjdCktPndyYXBwZWQoKS5tb2R1bGVMb2FkZXIoKTsKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKICAgICBpZiAoZ2xvYmFsT2JqZWN0LT5pbmhlcml0czxKU0lEQlNlcmlh
bGl6YXRpb25HbG9iYWxPYmplY3Q+KHZtKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0jZW5k
aWYKKwogICAgIGRhdGFMb2coIlVuZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdDogIiwgSlNWYWx1ZShn
bG9iYWxPYmplY3QpLCAiXG4iKTsKICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
ICAgIHJldHVybiBudWxscHRyOwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJ
REJDdXJzb3JDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTSURCQ3Vyc29yQ3VzdG9tLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJREJDdXJzb3JDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNJREJDdXJz
b3IuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmlu
ZGluZ1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgogI2luY2x1ZGUgIkpT
SURCQ3Vyc29yV2l0aFZhbHVlLmgiCkBAIC03NSw1ICs3MywzIEBAIEpTVmFsdWUgdG9KUyhKU0M6
OkpTR2xvYmFsT2JqZWN0KiBsZXhpY2EKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9KU0lEQkN1cnNvcldpdGhWYWx1ZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJDdXJzb3JXaXRoVmFsdWVDdXN0b20uY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQkN1
cnNvcldpdGhWYWx1ZUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJKU0lEQkN1cnNvcldpdGhWYWx1ZS5oIgog
Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJCaW5kaW5nVXRp
bGl0aWVzLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29yV2l0aFZhbHVlLmgiCiAjaW5jbHVkZSA8SmF2
YVNjcmlwdENvcmUvSlNDSW5saW5lcy5oPgpAQCAtNTMsNSArNTEsMyBAQCB2b2lkIEpTSURCQ3Vy
c29yV2l0aFZhbHVlOjp2aXNpdEFkZGl0aW9uCiBERUZJTkVfVklTSVRfQURESVRJT05BTF9DSElM
RFJFTihKU0lEQkN1cnNvcldpdGhWYWx1ZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNJREJJbmRleEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJREJJbmRleEN1c3RvbS5jcHAJKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCSW5kZXhDdXN0b20uY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSlNJREJJbmRleC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJJREJJbmRleC5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0hlYXBJbmxpbmVzLmg+
CiAKQEAgLTQzLDUgKzQxLDMgQEAgdm9pZCBKU0lEQkluZGV4Ojp2aXNpdEFkZGl0aW9uYWxDaGls
ZHJlbgogREVGSU5FX1ZJU0lUX0FERElUSU9OQUxfQ0hJTERSRU4oSlNJREJJbmRleCk7CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJPYmplY3RTdG9yZUN1c3Rv
bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJPYmpl
Y3RTdG9yZUN1c3RvbS5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSURCT2JqZWN0U3RvcmVDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0y
OCw4ICsyOCw2IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNJREJP
YmplY3RTdG9yZS5oIgogCkBAIC00Niw1ICs0NCwzIEBAIHZvaWQgSlNJREJPYmplY3RTdG9yZTo6
dmlzaXRBZGRpdGlvbmFsQ2gKIERFRklORV9WSVNJVF9BRERJVElPTkFMX0NISUxEUkVOKEpTSURC
T2JqZWN0U3RvcmUpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDog
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJSZXF1ZXN0Q3VzdG9tLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlJlcXVlc3RDdXN0b20uY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlJl
cXVlc3RDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNs
dWRlICJKU0RPTUNvbnZlcnRJbmRleGVkREIuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnRJbnRl
cmZhY2UuaCIKQEAgLTEwMCw1ICs5OCwzIEBAIHZvaWQgSlNJREJSZXF1ZXN0Ojp2aXNpdEFkZGl0
aW9uYWxDaGlsZHIKIERFRklORV9WSVNJVF9BRERJVElPTkFMX0NISUxEUkVOKEpTSURCUmVxdWVz
dCk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxp
emF0aW9uR2xvYmFsT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCShyZXZpc2lvbiAyNzUx
MDUpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9i
YWxPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2IEBACiAKICNpbmNsdWRl
ICJXZWJDb3JlSlNDbGllbnREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwpAQCAtNjYsNSAr
NjQsMyBAQCB2b2lkIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6ZGVzCiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9i
YWxPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lE
QlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmgJKHdv
cmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkVtcHR5U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dC5oIgogI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCiAKQEAgLTY0LDUgKzYyLDMg
QEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
SURCVHJhbnNhY3Rpb25DdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTSURCVHJhbnNhY3Rpb25DdXN0b20uY3BwCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlRyYW5zYWN0aW9uQ3VzdG9tLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2lu
Y2x1ZGUgIkpTSURCVHJhbnNhY3Rpb24uaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAKIApAQCAtNDMsNSArNDEsMyBAQCB2b2lk
IEpTSURCVHJhbnNhY3Rpb246OnZpc2l0QWRkaXRpb25hbENoCiBERUZJTkVfVklTSVRfQURESVRJ
T05BTF9DSElMRFJFTihKU0lEQlRyYW5zYWN0aW9uKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6ZWRT
Y3JpcHRWYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
U2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNDI4Nyw3ICs0Mjg3LDYgQEAgdWludDMyX3QgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjp3
aXJlRm9ybQogICAgIHJldHVybiBDdXJyZW50VmVyc2lvbjsKIH0KIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogVmVjdG9yPFN0cmluZz4gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpibG9i
VVJMc0lzb2xhdGVkQ29weSgpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFN0cmluZz4gcmVzdWx0OwpA
QCAtNDMzOCw2ICs0MzM3LDQgQEAgSURCVmFsdWUgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjp3cml0
ZUJsbwogICAgIHJldHVybiB2YWx1ZTsKIH0KIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaAkocmV2aXNpb24gMjc1
MTA1KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVl
LmgJKHdvcmtpbmcgY29weSkKQEAgLTk3LDEyICs5Nyw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBW
ZWN0b3I8dWludDhfdD4mIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2RhdGE7IH0KICAgICBib29s
IGhhc0Jsb2JVUkxzKCkgY29uc3QgeyByZXR1cm4gIW1fYmxvYlVSTHMuaXNFbXB0eSgpOyB9CiAK
LSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBWZWN0b3I8U3RyaW5nPiBibG9iVVJM
c0lzb2xhdGVkQ29weSgpIGNvbnN0OwogICAgIHZvaWQgd3JpdGVCbG9ic1RvRGlza0ZvckluZGV4
ZWREQihDb21wbGV0aW9uSGFuZGxlcjx2b2lkKElEQlZhbHVlJiYpPiYmKTsKICAgICBJREJWYWx1
ZSB3cml0ZUJsb2JzVG9EaXNrRm9ySW5kZXhlZERCU3luY2hyb25vdXNseSgpOwotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAgICAgc3RhdGljIFJlZjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+IGNyZWF0ZUZyb21XaXJlQnl0ZXMoVmVjdG9yPHVpbnQ4X3Q+JiYgZGF0YSkKICAg
ICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZShX
VEZNb3ZlKGRhdGEpKSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3Jl
SlNDbGllbnREYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9XZWJDb3JlSlNDbGllbnREYXRhLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTc2LDkgKzc2LDcgQEAgSlNWTUNsaWVudERhdGE6OkpTVk1DbGllbnREYXRhKFZNJiB2bSkK
ICNpZiBFTkFCTEUoV0VCX0FVRElPKQogICAgICwgbV9oZWFwQ2VsbFR5cGVGb3JKU0F1ZGlvV29y
a2xldEdsb2JhbFNjb3BlKEpTQzo6SXNvSGVhcENlbGxUeXBlOjpjcmVhdGU8SlNBdWRpb1dvcmts
ZXRHbG9iYWxTY29wZT4oKSkKICNlbmRpZgotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQog
ICAgICwgbV9oZWFwQ2VsbFR5cGVGb3JKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QoSlND
OjpJc29IZWFwQ2VsbFR5cGU6OmNyZWF0ZTxKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Q+
KCkpCi0jZW5kaWYKICAgICAsIG1fZG9tQnVpbHRpbkNvbnN0cnVjdG9yU3BhY2UgSVNPX1NVQlNQ
QUNFX0lOSVQodm0uaGVhcCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgSlNET01CdWlsdGlu
Q29uc3RydWN0b3JCYXNlKQogICAgICwgbV9kb21Db25zdHJ1Y3RvclNwYWNlIElTT19TVUJTUEFD
RV9JTklUKHZtLmhlYXAsIHZtLmNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIEpTRE9NQ29uc3RydWN0
b3JCYXNlKQogICAgICwgbV9kb21XaW5kb3dQcm9wZXJ0aWVzU3BhY2UgSVNPX1NVQlNQQUNFX0lO
SVQodm0uaGVhcCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgSlNET01XaW5kb3dQcm9wZXJ0
aWVzKQpAQCAtODYsOSArODQsNyBAQCBKU1ZNQ2xpZW50RGF0YTo6SlNWTUNsaWVudERhdGEoVk0m
IHZtKQogICAgICwgbV9ydW50aW1lTWV0aG9kU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVh
cCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgUnVudGltZU1ldGhvZCkgLy8gSGFzaDoweGY3
MGM0YTg1CiAgICAgLCBtX3J1bnRpbWVPYmplY3RTcGFjZSBJU09fU1VCU1BBQ0VfSU5JVCh2bS5o
ZWFwLCBtX3J1bnRpbWVPYmplY3RIZWFwQ2VsbFR5cGUuZ2V0KCksIEpTQzo6QmluZGluZ3M6OlJ1
bnRpbWVPYmplY3QpCiAgICAgLCBtX3dpbmRvd1Byb3h5U3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQo
dm0uaGVhcCwgbV93aW5kb3dQcm94eUhlYXBDZWxsVHlwZS5nZXQoKSwgSlNXaW5kb3dQcm94eSkK
LSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1faWRiU2VyaWFsaXphdGlvblNw
YWNlIElTT19TVUJTUEFDRV9JTklUKHZtLmhlYXAsIG1faGVhcENlbGxUeXBlRm9ySlNJREJTZXJp
YWxpemF0aW9uR2xvYmFsT2JqZWN0LmdldCgpLCBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmpl
Y3QpCi0jZW5kaWYKICAgICAsIG1fc3Vic3BhY2VzKG1ha2VVbmlxdWU8RE9NSXNvU3Vic3BhY2Vz
PigpKQogewogfQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xp
ZW50RGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNv
cmVKU0NsaWVudERhdGEuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDcsOSAr
MTA3LDggQEAgcHVibGljOgogI2lmIEVOQUJMRShXRUJfQVVESU8pCiAgICAgc3RkOjp1bmlxdWVf
cHRyPEpTQzo6SGVhcENlbGxUeXBlPiBtX2hlYXBDZWxsVHlwZUZvckpTQXVkaW9Xb3JrbGV0R2xv
YmFsU2NvcGU7CiAjZW5kaWYKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBzdGQ6
OnVuaXF1ZV9wdHI8SlNDOjpIZWFwQ2VsbFR5cGU+IG1faGVhcENlbGxUeXBlRm9ySlNJREJTZXJp
YWxpemF0aW9uR2xvYmFsT2JqZWN0OwotI2VuZGlmCisKIHByaXZhdGU6CiAgICAgSlNDOjpJc29T
dWJzcGFjZSBtX2RvbUJ1aWx0aW5Db25zdHJ1Y3RvclNwYWNlOwogICAgIEpTQzo6SXNvU3Vic3Bh
Y2UgbV9kb21Db25zdHJ1Y3RvclNwYWNlOwpAQCAtMTE4LDkgKzExNyw3IEBAIHByaXZhdGU6CiAg
ICAgSlNDOjpJc29TdWJzcGFjZSBtX3J1bnRpbWVNZXRob2RTcGFjZTsKICAgICBKU0M6Oklzb1N1
YnNwYWNlIG1fcnVudGltZU9iamVjdFNwYWNlOwogICAgIEpTQzo6SXNvU3Vic3BhY2UgbV93aW5k
b3dQcm94eVNwYWNlOwotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIEpTQzo6SXNv
U3Vic3BhY2UgbV9pZGJTZXJpYWxpemF0aW9uU3BhY2U7Ci0jZW5kaWYKICAgICBzdGQ6OnVuaXF1
ZV9wdHI8RE9NSXNvU3Vic3BhY2VzPiBtX3N1YnNwYWNlczsKICAgICBWZWN0b3I8SlNDOjpJc29T
dWJzcGFjZSo+IG1fb3V0cHV0Q29uc3RyYWludFNwYWNlczsKIH07CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9E
b2N1bWVudC5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExNSw2ICsxMTUsOCBAQAogI2luY2x1ZGUgIkhp
Z2hsaWdodFJlZ2lzdGVyLmgiCiAjaW5jbHVkZSAiSGlzdG9yeS5oIgogI2luY2x1ZGUgIkhpdFRl
c3RSZXN1bHQuaCIKKyNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIKKyNpbmNsdWRlICJJ
REJPcGVuREJSZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSWRsZUNhbGxiYWNrQ29udHJvbGxlci5oIgog
I2luY2x1ZGUgIkltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIkltYWdl
TG9hZGVyLmgiCkBAIC0yNzksMTEgKzI4MSw2IEBACiAjaW5jbHVkZSAiUmVuZGVyRnVsbFNjcmVl
bi5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSNpbmNsdWRlICJJ
REJDb25uZWN0aW9uUHJveHkuaCIKLSNpbmNsdWRlICJJREJPcGVuREJSZXF1ZXN0LmgiCi0jZW5k
aWYKLQogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW5jbHVkZSAiQ29udGVudENoYW5nZU9i
c2VydmVyLmgiCiAjaW5jbHVkZSAiQ1NTRm9udFNlbGVjdG9yLmgiCkBAIC0zNDc0LDcgKzM0NzEs
NiBAQCB2b2lkIERvY3VtZW50OjpkaXNhYmxlV2ViQXNzZW1ibHkoY29uc3QgCiAgICAgZnJhbWUo
KS0+c2NyaXB0KCkuZGlzYWJsZVdlYkFzc2VtYmx5KGVycm9yTWVzc2FnZSk7CiB9CiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBE
b2N1bWVudDo6aWRiQ29ubmVjdGlvblByb3h5KCkKIHsKICAgICBpZiAoIW1faWRiQ29ubmVjdGlv
blByb3h5KSB7CkBAIC0zNDg1LDcgKzM0ODEsNiBAQCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Q
cm94eSogRG9jdW1lbnQ6CiAgICAgfQogICAgIHJldHVybiBtX2lkYkNvbm5lY3Rpb25Qcm94eS5n
ZXQoKTsKIH0KLSNlbmRpZgogCiBTb2NrZXRQcm92aWRlciogRG9jdW1lbnQ6OnNvY2tldFByb3Zp
ZGVyKCkKIHsKQEAgLTU0NTUsMTggKzU0NTAsMTQgQEAgdm9pZCBEb2N1bWVudDo6c2V0QmFja0Zv
cndhcmRDYWNoZVN0YXRlKAogCiAgICAgICAgIGNsZWFyU2hhcmVkT2JqZWN0UG9vbCgpOwogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgICAgIGlmIChtX2lkYkNvbm5lY3Rpb25Q
cm94eSkKICAgICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVu
ZGVkKCpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIHRydWUpOwotI2VuZGlmCiAgICAgICAgIGJy
ZWFrOwogICAgIGNhc2UgTm90SW5CYWNrRm9yd2FyZENhY2hlOgogICAgICAgICBpZiAoY2hpbGRO
ZWVkc1N0eWxlUmVjYWxjKCkpCiAgICAgICAgICAgICBzY2hlZHVsZVN0eWxlUmVjYWxjKCk7Ci0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgICAgIGlmIChtX2lkYkNvbm5lY3Rpb25Q
cm94eSkKICAgICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVu
ZGVkKCpzY3JpcHRFeGVjdXRpb25Db250ZXh0KCksIGZhbHNlKTsKLSNlbmRpZgogICAgICAgICBi
cmVhazsKICAgICBjYXNlIEFib3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6CiAgICAgICAgIGJy
ZWFrOwpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MDEsOSArNzAxLDcg
QEAgcHVibGljOgogICAgIHZvaWQgZGlzYWJsZUV2YWwoY29uc3QgU3RyaW5nJiBlcnJvck1lc3Nh
Z2UpIGZpbmFsOwogICAgIHZvaWQgZGlzYWJsZVdlYkFzc2VtYmx5KGNvbnN0IFN0cmluZyYgZXJy
b3JNZXNzYWdlKSBmaW5hbDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIElE
QkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBpZGJDb25uZWN0aW9uUHJveHkoKSBmaW5hbDsK
LSNlbmRpZgogICAgIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcigpIGZpbmFsOwogICAg
IFJlZlB0cjxSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uPiBjcmVhdGVSVENE
YXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uKCkgZmluYWw7CiAKQEAgLTE5OTQsOSAr
MTk5Miw3IEBAIHByaXZhdGU6CiAgICAgVGFyZ2V0Q2xpZW50VG9JZE1hcCBtX2NsaWVudFRvSURN
YXA7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxJ
REJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eT4gbV9pZGJDb25uZWN0aW9uUHJveHk7Ci0jZW5k
aWYKIAogI2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCiAgICAgSGFzaE1hcDxTdHJpbmcs
IFJlZjxIVE1MQXR0YWNobWVudEVsZW1lbnQ+PiBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9FbGVt
ZW50TWFwOwpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0VtcHR5U2NyaXB0RXhlY3V0aW9uQ29u
dGV4dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9FbXB0eVNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0Vt
cHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw5ICs1Nyw3
IEBAIHB1YmxpYzoKICAgICB2b2lkIGRpc2FibGVFdmFsKGNvbnN0IFN0cmluZyYpIGZpbmFsIHsg
fTsKICAgICB2b2lkIGRpc2FibGVXZWJBc3NlbWJseShjb25zdCBTdHJpbmcmKSBmaW5hbCB7IH07
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJREJDbGllbnQ6OklEQkNvbm5l
Y3Rpb25Qcm94eSogaWRiQ29ubmVjdGlvblByb3h5KCkgZmluYWwgeyByZXR1cm4gbnVsbHB0cjsg
fQotI2VuZGlmCiAgICAgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKCkgZmluYWwgeyBy
ZXR1cm4gbnVsbHB0cjsgfQogCiAgICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShzdGQ6OnVuaXF1
ZV9wdHI8SW5zcGVjdG9yOjpDb25zb2xlTWVzc2FnZT4mJikgZmluYWwgeyB9CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9kb20vRXZlbnROYW1lcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9kb20vRXZlbnROYW1lcy5pbgkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUv
ZG9tL0V2ZW50TmFtZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTcxLDcgKzcxLDcgQEAgU3RvcmFn
ZUV2ZW50CiBTVkdFdmVudHMgaW50ZXJmYWNlTmFtZT1FdmVudAogU1ZHWm9vbUV2ZW50CiBTVkda
b29tRXZlbnRzIGludGVyZmFjZU5hbWU9U1ZHWm9vbUV2ZW50Ci1JREJWZXJzaW9uQ2hhbmdlRXZl
bnQgY29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRQorSURCVmVyc2lvbkNoYW5nZUV2ZW50CiBU
b3VjaEV2ZW50IGNvbmRpdGlvbmFsPVRPVUNIX0VWRU5UUwogRGV2aWNlTW90aW9uRXZlbnQgY29u
ZGl0aW9uYWw9REVWSUNFX09SSUVOVEFUSU9OCiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50IGNvbmRp
dGlvbmFsPURFVklDRV9PUklFTlRBVElPTgpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
VGFyZ2V0RmFjdG9yeS5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRU
YXJnZXRGYWN0b3J5LmluCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20v
RXZlbnRUYXJnZXRGYWN0b3J5LmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNCwxMCArMTQsMTAgQEAg
RE9NV2luZG93CiBFdmVudFNvdXJjZQogRmlsZVJlYWRlcgogRm9udEZhY2VTZXQKLUlEQkRhdGFi
YXNlIGNvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UKLUlEQk9wZW5EQlJlcXVlc3QgY29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRQotSURCUmVxdWVzdCBjb25kaXRpb25hbD1JTkRFWEVEX0RB
VEFCQVNFCi1JREJUcmFuc2FjdGlvbiBjb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFCitJREJE
YXRhYmFzZQorSURCT3BlbkRCUmVxdWVzdAorSURCUmVxdWVzdAorSURCVHJhbnNhY3Rpb24KIE1l
ZGlhQ29udHJvbGxlciBjb25kaXRpb25hbD1WSURFTwogTWVkaWFEZXZpY2VzIGNvbmRpdGlvbmFs
PU1FRElBX1NUUkVBTQogTWVkaWFLZXlTZXNzaW9uIGNvbmRpdGlvbmFsPUVOQ1JZUFRFRF9NRURJ
QQpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCShy
ZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29u
dGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDksOSArMTA5LDggQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBkaXNhYmxlRXZhbChjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkgPSAwOwog
ICAgIHZpcnR1YWwgdm9pZCBkaXNhYmxlV2ViQXNzZW1ibHkoY29uc3QgU3RyaW5nJiBlcnJvck1l
c3NhZ2UpID0gMDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZpcnR1YWwg
SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSgpID0gMDsK
LSNlbmRpZgorCiAgICAgdmlydHVhbCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIoKSA9
IDA7CiAKICAgICB2aXJ0dWFsIFJlZlB0cjxSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25u
ZWN0aW9uPiBjcmVhdGVSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uKCkgeyBy
ZXR1cm4gbnVsbHB0cjsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckNvbnRyb2xsZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JDb250cm9sbGVyLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0x
NzAsOSArMTcwLDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpjcmVhdGVMYXp5QWdlbgog
ICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvcldvcmtlckFnZW50PihwYWdl
Q29udGV4dCkpOwogICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvckRPTVN0
b3JhZ2VBZ2VudD4ocGFnZUNvbnRleHQpKTsKICAgICBtX2FnZW50cy5hcHBlbmQobWFrZVVuaXF1
ZTxJbnNwZWN0b3JEYXRhYmFzZUFnZW50PihwYWdlQ29udGV4dCkpOwotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3Rvcklu
ZGV4ZWREQkFnZW50PihwYWdlQ29udGV4dCkpOwotI2VuZGlmCiAKICAgICBhdXRvIHNjcmlwdFBy
b2ZpbGVyQWdlbnRQdHIgPSBtYWtlVW5pcXVlPEluc3BlY3RvclNjcmlwdFByb2ZpbGVyQWdlbnQ+
KHBhZ2VDb250ZXh0KTsKICAgICBtX2luc3RydW1lbnRpbmdBZ2VudHMtPnNldFBlcnNpc3RlbnRT
Y3JpcHRQcm9maWxlckFnZW50KHNjcmlwdFByb2ZpbGVyQWdlbnRQdHIuZ2V0KCkpOwpJbmRleDog
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVkREJBZ2VudC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0
b3JJbmRleGVkREJBZ2VudC5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9hZ2VudHMvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0zMiw4ICszMiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5z
cGVjdG9ySW5kZXhlZERCQWdlbnQuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CiAjaW5jbHVkZSAiQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMuaCIKICNpbmNsdWRlICJET01TdHJp
bmdMaXN0LmgiCiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCkBAIC03NDAsNCArNzM4LDMgQEAgdm9p
ZCBJbnNwZWN0b3JJbmRleGVkREJBZ2VudDo6Y2xlYXJPYmplYwogfQogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckluZGV4ZWREQkFnZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRl
eGVkREJBZ2VudC5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvYWdlbnRzL0luc3BlY3RvckluZGV4ZWREQkFnZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTMx
LDggKzMxLDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIkluc3BlY3RvcldlYkFnZW50QmFzZS5oIgogI2luY2x1ZGUgPEphdmFT
Y3JpcHRDb3JlL0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVycy5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L1dURlN0cmluZy5oPgpAQCAtNzIsNSArNzAsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAkocmV2aXNpb24gMjc1MTA1
KQorKysgU291cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTE2MCw3ICsxNjAsNiBAQCBwcml2YXRlOgogfTsKIAogY2xhc3MgRW1wdHlEYXRhYmFz
ZVByb3ZpZGVyIGZpbmFsIDogcHVibGljIERhdGFiYXNlUHJvdmlkZXIgewotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQogICAgIHN0cnVjdCBFbXB0eUlEQkNvbm5lY3Rpb25Ub1NlcnZlckRl
bGV0ZWdhdGUgZmluYWwgOiBwdWJsaWMgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXJE
ZWxlZ2F0ZSB7CiAgICAgICAgIElEQkNvbm5lY3Rpb25JZGVudGlmaWVyIGlkZW50aWZpZXIoKSBj
b25zdCBmaW5hbCB7IHJldHVybiB7IH07IH0KICAgICAgICAgdm9pZCBkZWxldGVEYXRhYmFzZShj
b25zdCBJREJSZXF1ZXN0RGF0YSYpIGZpbmFsIHsgfQpAQCAtMTk4LDcgKzE5Nyw2IEBAIGNsYXNz
IEVtcHR5RGF0YWJhc2VQcm92aWRlciBmaW5hbCA6IHB1YmwKICAgICAgICAgc3RhdGljIGF1dG8m
IGVtcHR5Q29ubmVjdGlvbiA9IElEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyOjpjcmVh
dGUoZW1wdHlEZWxlZ2F0ZS5nZXQoKSkubGVha1JlZigpOwogICAgICAgICByZXR1cm4gZW1wdHlD
b25uZWN0aW9uOwogICAgIH0KLSNlbmRpZgogfTsKIAogY2xhc3MgRW1wdHlEaWFnbm9zdGljTG9n
Z2luZ0NsaWVudCBmaW5hbCA6IHB1YmxpYyBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCB7CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wYWdlL0RhdGFiYXNlUHJvdmlkZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wYWdlL0RhdGFiYXNlUHJvdmlkZXIuaAkocmV2aXNpb24gMjc1MTA1KQor
KysgU291cmNlL1dlYkNvcmUvcGFnZS9EYXRhYmFzZVByb3ZpZGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQwLDEwICs0MCw3IEBAIGNsYXNzIElEQkNvbm5lY3Rpb25Ub1NlcnZlcjsKIGNsYXNzIFdF
QkNPUkVfRVhQT1JUIERhdGFiYXNlUHJvdmlkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxEYXRhYmFz
ZVByb3ZpZGVyPiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+RGF0YWJhc2VQcm92aWRlcigpOwot
Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgdmlydHVhbCBJREJDbGllbnQ6OklE
QkNvbm5lY3Rpb25Ub1NlcnZlciYgaWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25z
dCBQQUw6OlNlc3Npb25JRCYpID0gMDsKLSNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wYWdlL1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Miw2ICs3Miw3IEBACiAj
aW5jbHVkZSAiSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCIKICNpbmNsdWRlICJIaXN0b3J5
Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIkhpc3RvcnlJdGVtLmgiCisjaW5jbHVkZSAiSURCQ29u
bmVjdGlvblRvU2VydmVyLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50LmgiCiAjaW5jbHVk
ZSAiSW5zcGVjdG9yQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIkluc3BlY3Rvckluc3RydW1lbnRh
dGlvbi5oIgpAQCAtMTYyLDEwICsxNjMsNiBAQAogI2luY2x1ZGUgIlNlcnZpY2VzT3ZlcmxheUNv
bnRyb2xsZXIuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0jaW5j
bHVkZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShXRUJH
TCkKICNpbmNsdWRlICJXZWJHTFN0YXRlVHJhY2tlci5oIgogI2VuZGlmCkBAIC0yODgwLDEwICsy
ODc3LDggQEAgdm9pZCBQYWdlOjpzZXRTZXNzaW9uSUQoUEFMOjpTZXNzaW9uSUQgcwogICAgIEFT
U0VSVChtX3Nlc3Npb25JRCA9PSBQQUw6OlNlc3Npb25JRDo6bGVnYWN5UHJpdmF0ZVNlc3Npb25J
RCgpIHx8IG1fc2Vzc2lvbklEID09IFBBTDo6U2Vzc2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCkp
OwogICAgIEFTU0VSVChzZXNzaW9uSUQgPT0gUEFMOjpTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVT
ZXNzaW9uSUQoKSB8fCBzZXNzaW9uSUQgPT0gUEFMOjpTZXNzaW9uSUQ6OmRlZmF1bHRTZXNzaW9u
SUQoKSk7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBpZiAoc2Vzc2lvbklE
ICE9IG1fc2Vzc2lvbklEKQogICAgICAgICBtX2lkYkNvbm5lY3Rpb25Ub1NlcnZlciA9IG51bGxw
dHI7Ci0jZW5kaWYKIAogICAgIGlmIChzZXNzaW9uSUQgIT0gbV9zZXNzaW9uSUQgJiYgbV9zZXNz
aW9uU3RvcmFnZSkKICAgICAgICAgbV9zZXNzaW9uU3RvcmFnZS0+c2V0U2Vzc2lvbklERm9yVGVz
dGluZyhzZXNzaW9uSUQpOwpAQCAtMzAzOSw3ICszMDM0LDYgQEAgdm9pZCBQYWdlOjpzZXRBbGxv
d3NNZWRpYURvY3VtZW50SW5saW5lUAogCiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXImIFBhZ2U6OmlkYkNvbm5l
Y3Rpb24oKQogewogICAgIGlmICghbV9pZGJDb25uZWN0aW9uVG9TZXJ2ZXIpCkBAIC0zMDU3LDcg
KzMwNTEsNiBAQCB2b2lkIFBhZ2U6OmNsZWFySURCQ29ubmVjdGlvbigpCiB7CiAgICAgbV9pZGJD
b25uZWN0aW9uVG9TZXJ2ZXIgPSBudWxscHRyOwogfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoUkVT
T1VSQ0VfVVNBR0UpCiB2b2lkIFBhZ2U6OnNldFJlc291cmNlVXNhZ2VPdmVybGF5VmlzaWJsZShi
b29sIHZpc2libGUpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291
cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgJKHdvcmtpbmcgY29weSkKQEAgLTc0MywxMSArNzQzLDkg
QEAgcHVibGljOgogICAgIGJvb2wgYWxsb3dzUGxheWJhY2tDb250cm9sc0ZvckF1dG9wbGF5aW5n
QXVkaW8oKSBjb25zdCB7IHJldHVybiBtX2FsbG93c1BsYXliYWNrQ29udHJvbHNGb3JBdXRvcGxh
eWluZ0F1ZGlvOyB9CiAgICAgdm9pZCBzZXRBbGxvd3NQbGF5YmFja0NvbnRyb2xzRm9yQXV0b3Bs
YXlpbmdBdWRpbyhib29sIGFsbG93c1BsYXliYWNrQ29udHJvbHNGb3JBdXRvcGxheWluZ0F1ZGlv
KSB7IG1fYWxsb3dzUGxheWJhY2tDb250cm9sc0ZvckF1dG9wbGF5aW5nQXVkaW8gPSBhbGxvd3NQ
bGF5YmFja0NvbnRyb2xzRm9yQXV0b3BsYXlpbmdBdWRpbzsgfQogCi0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCiAgICAgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXImIGlkYkNv
bm5lY3Rpb24oKTsKICAgICBXRUJDT1JFX0VYUE9SVCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25U
b1NlcnZlciogb3B0aW9uYWxJREJDb25uZWN0aW9uKCk7CiAgICAgV0VCQ09SRV9FWFBPUlQgdm9p
ZCBjbGVhcklEQkNvbm5lY3Rpb24oKTsKLSNlbmRpZgogCiAgICAgdm9pZCBzZXRTaG93QWxsUGx1
Z2lucyhib29sIHNob3dBbGwpIHsgbV9zaG93QWxsUGx1Z2lucyA9IHNob3dBbGw7IH0KICAgICBi
b29sIHNob3dBbGxQbHVnaW5zKCkgY29uc3Q7CkBAIC0xMDMxLDkgKzEwMjksNyBAQCBwcml2YXRl
OgogICAgIGNvbnN0IHN0ZDo6dW5pcXVlX3B0cjxQYWdlRGVidWdnYWJsZT4gbV9pbnNwZWN0b3JE
ZWJ1Z2dhYmxlOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBS
ZWZQdHI8SURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXI+IG1faWRiQ29ubmVjdGlvblRv
U2VydmVyOwotI2VuZGlmCiAKICAgICBIYXNoU2V0PFN0cmluZz4gbV9zZWVuUGx1Z2luczsKICAg
ICBIYXNoU2V0PFN0cmluZz4gbV9zZWVuTWVkaWFFbmdpbmVzOwpJbmRleDogU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDcsNiArMTA3LDggQEAK
ICNpbmNsdWRlICJIaXN0b3J5Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIkhpc3RvcnlJdGVtLmgi
CiAjaW5jbHVkZSAiSGl0VGVzdFJlc3VsdC5oIgorI2luY2x1ZGUgIklEQlJlcXVlc3QuaCIKKyNp
bmNsdWRlICJJREJUcmFuc2FjdGlvbi5oIgogI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudC5oIgog
I2luY2x1ZGUgIkluc3BlY3RvckNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JEZWJ1
Z2dhYmxlVHlwZS5oIgpAQCAtMzAzLDExICszMDUsNiBAQAogI2luY2x1ZGUgIlBvaW50ZXJMb2Nr
Q29udHJvbGxlci5oIgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSNp
bmNsdWRlICJJREJSZXF1ZXN0LmgiCi0jaW5jbHVkZSAiSURCVHJhbnNhY3Rpb24uaCIKLSNlbmRp
ZgotCiAjaWYgVVNFKFFVSUNLX0xPT0spCiAjaW5jbHVkZSAiTGVnYWN5UHJldmlld0xvYWRlci5o
IgogI2luY2x1ZGUgIk1vY2tQcmV2aWV3TG9hZGVyQ2xpZW50LmgiCkBAIC0yNjI5LDEyICsyNjI2
LDEwIEBAIEV4Y2VwdGlvbk9yPHVuc2lnbmVkPiBJbnRlcm5hbHM6OmNvdW50RmkKICAgICByZXR1
cm4gZG9jdW1lbnQtPnBhZ2UoKS0+Y291bnRGaW5kTWF0Y2hlcyh0ZXh0LCBwYXJzZWRPcHRpb25z
LnJlbGVhc2VSZXR1cm5WYWx1ZSgpLCAxMDAwKTsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogdW5zaWduZWQgSW50ZXJuYWxzOjpudW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGNv
bnN0CiB7CiAgICAgcmV0dXJuIElEQlRyYW5zYWN0aW9uOjpudW1iZXJPZklEQlRyYW5zYWN0aW9u
czsKIH0KLSNlbmRpZgogCiB1bnNpZ25lZCBJbnRlcm5hbHM6Om51bWJlck9mTGl2ZU5vZGVzKCkg
Y29uc3QKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAkocmV2aXNpb24gMjc1
MTA1KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAkod29ya2luZyBjb3B5
KQpAQCAtNDQ5LDkgKzQ0OSw3IEBAIHB1YmxpYzoKICAgICBFeGNlcHRpb25Pcjx2b2lkPiBpbnNl
cnRBdXRob3JDU1MoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4g
aW5zZXJ0VXNlckNTUyhjb25zdCBTdHJpbmcmKSBjb25zdDsKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQogICAgIHVuc2lnbmVkIG51bWJlck9mSURCVHJhbnNhY3Rpb25zKCkgY29uc3Q7
Ci0jZW5kaWYKIAogICAgIHVuc2lnbmVkIG51bWJlck9mTGl2ZU5vZGVzKCkgY29uc3Q7CiAgICAg
dW5zaWduZWQgbnVtYmVyT2ZMaXZlRG9jdW1lbnRzKCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
dGVzdGluZy9JbnRlcm5hbHMuaWRsCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFscy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTUzMyw3ICs1MzMsNyBA
QCBlbnVtIFRyZWVUeXBlIHsKICAgICB1bmRlZmluZWQgYmVnaW5TaW11bGF0ZWRNZW1vcnlQcmVz
c3VyZSgpOwogICAgIHVuZGVmaW5lZCBlbmRTaW11bGF0ZWRNZW1vcnlQcmVzc3VyZSgpOwogCi0g
ICAgW0NvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0VdIHVuc2lnbmVkIGxvbmcgbnVtYmVyT2ZJ
REJUcmFuc2FjdGlvbnMoKTsKKyAgICB1bnNpZ25lZCBsb25nIG51bWJlck9mSURCVHJhbnNhY3Rp
b25zKCk7CiAKICAgICB1bnNpZ25lZCBsb25nIG51bWJlck9mTGl2ZU5vZGVzKCk7CiAgICAgdW5z
aWduZWQgbG9uZyBudW1iZXJPZkxpdmVEb2N1bWVudHMoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBT
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtNjcsOSArNjcsNyBAQCBXb3JrZXJHbG9iYWxTY29wZTo6V29ya2VyR2xvYmFsU2NvcGUo
V29yCiAgICAgLCBtX2lzT25saW5lKHBhcmFtcy5pc09ubGluZSkKICAgICAsIG1fc2hvdWxkQnlw
YXNzTWFpbldvcmxkQ29udGVudFNlY3VyaXR5UG9saWN5KHBhcmFtcy5zaG91bGRCeXBhc3NNYWlu
V29ybGRDb250ZW50U2VjdXJpdHlQb2xpY3kpCiAgICAgLCBtX3RvcE9yaWdpbihXVEZNb3ZlKHRv
cE9yaWdpbikpCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgLCBtX2Nvbm5lY3Rp
b25Qcm94eShjb25uZWN0aW9uUHJveHkpCi0jZW5kaWYKICAgICAsIG1fc29ja2V0UHJvdmlkZXIo
c29ja2V0UHJvdmlkZXIpCiAgICAgLCBtX3BlcmZvcm1hbmNlKFBlcmZvcm1hbmNlOjpjcmVhdGUo
dGhpcywgcGFyYW1zLnRpbWVPcmlnaW4pKQogICAgICwgbV9yZWZlcnJlclBvbGljeShwYXJhbXMu
cmVmZXJyZXJQb2xpY3kpCkBAIC03NywxMCArNzUsNiBAQCBXb3JrZXJHbG9iYWxTY29wZTo6V29y
a2VyR2xvYmFsU2NvcGUoV29yCiAgICAgLCBtX3dvcmtlclR5cGUocGFyYW1zLndvcmtlclR5cGUp
CiAgICAgLCBtX2NyZWRlbnRpYWxzKHBhcmFtcy5jcmVkZW50aWFscykKIHsKLSNpZiAhRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0gICAgVU5VU0VEX1BBUkFNKGNvbm5lY3Rpb25Qcm94eSk7Ci0j
ZW5kaWYKLQogICAgIGlmIChtX3RvcE9yaWdpbi0+aGFzVW5pdmVyc2FsQWNjZXNzKCkpCiAgICAg
ICAgIG9yaWdpbi0+Z3JhbnRVbml2ZXJzYWxBY2Nlc3MoKTsKICAgICBpZiAobV90b3BPcmlnaW4t
Pm5lZWRzU3RvcmFnZUFjY2Vzc0Zyb21GaWxlVVJMc1F1aXJrKCkpCkBAIC0xMTMsOSArMTA3LDcg
QEAgdm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6cHJlcGFyZUZvckRlc3RydQogewogICAgIFdvcmtl
ck9yV29ya2xldEdsb2JhbFNjb3BlOjpwcmVwYXJlRm9yRGVzdHJ1Y3Rpb24oKTsKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHN0b3BJbmRleGVkRGF0YWJhc2UoKTsKLSNlbmRp
ZgogCiAgICAgaWYgKG1fY2FjaGVTdG9yYWdlQ29ubmVjdGlvbikKICAgICAgICAgbV9jYWNoZVN0
b3JhZ2VDb25uZWN0aW9uLT5jbGVhclBlbmRpbmdSZXF1ZXN0cygpOwpAQCAtMTcyLDQzICsxNjQs
MjkgQEAgUmVmUHRyPFJUQ0RhdGFDaGFubmVsUmVtb3RlSGFuZGxlckNvbm5lYwogICAgIHJldHVy
biBjb25uZWN0aW9uOwogfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIElEQkNs
aWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBXb3JrZXJHbG9iYWxTY29wZTo6aWRiQ29ubmVjdGlv
blByb3h5KCkKIHsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTKQogICAg
IHJldHVybiBtX2Nvbm5lY3Rpb25Qcm94eS5nZXQoKTsKLSNlbHNlCi0gICAgcmV0dXJuIG51bGxw
dHI7Ci0jZW5kaWYKIH0KIAogdm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6c3RvcEluZGV4ZWREYXRh
YmFzZSgpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKICAgICBp
ZiAobV9jb25uZWN0aW9uUHJveHkpCiAgICAgICAgIG1fY29ubmVjdGlvblByb3h5LT5mb3JnZXRB
Y3Rpdml0eUZvckN1cnJlbnRUaHJlYWQoKTsKLSNlbmRpZgogfQogCiB2b2lkIFdvcmtlckdsb2Jh
bFNjb3BlOjpzdXNwZW5kKCkKIHsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JL
RVJTKQogICAgIGlmIChtX2Nvbm5lY3Rpb25Qcm94eSkKICAgICAgICAgbV9jb25uZWN0aW9uUHJv
eHktPnNldENvbnRleHRTdXNwZW5kZWQoKnRoaXMsIHRydWUpOwotI2VuZGlmCiB9CiAKIHZvaWQg
V29ya2VyR2xvYmFsU2NvcGU6OnJlc3VtZSgpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0VfSU5fV09SS0VSUykKICAgICBpZiAobV9jb25uZWN0aW9uUHJveHkpCiAgICAgICAgIG1fY29u
bmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVuZGVkKCp0aGlzLCBmYWxzZSk7Ci0jZW5kaWYK
IH0KIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBXb3JrZXJMb2NhdGlv
biYgV29ya2VyR2xvYmFsU2NvcGU6OmxvY2F0aW9uKCkgY29uc3QKIHsKICAgICBpZiAoIW1fbG9j
YXRpb24pCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2JhbFNjb3BlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5o
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlckdsb2Jh
bFNjb3BlLmgJKHdvcmtpbmcgY29weSkKQEAgLTY4LDExICs2OCw5IEBAIHB1YmxpYzoKICAgICBT
dHJpbmcgb3JpZ2luKCkgY29uc3Q7CiAgICAgY29uc3QgU3RyaW5nJiBpZGVudGlmaWVyKCkgY29u
c3QgeyByZXR1cm4gbV9pZGVudGlmaWVyOyB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKICAgICBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogaWRiQ29ubmVjdGlvblByb3h5
KCkgZmluYWw7CiAgICAgdm9pZCBzdXNwZW5kKCkgZmluYWw7CiAgICAgdm9pZCByZXN1bWUoKSBm
aW5hbDsKLSNlbmRpZgogCiAgICAgV29ya2VyQ2FjaGVTdG9yYWdlQ29ubmVjdGlvbiYgY2FjaGVT
dG9yYWdlQ29ubmVjdGlvbigpOwogICAgIE1lc3NhZ2VQb3J0Q2hhbm5lbFByb3ZpZGVyJiBtZXNz
YWdlUG9ydENoYW5uZWxQcm92aWRlcigpOwpAQCAtMTU1LDkgKzE1Myw3IEBAIHByaXZhdGU6CiAg
ICAgYm9vbCB1bndyYXBDcnlwdG9LZXkoY29uc3QgVmVjdG9yPHVpbnQ4X3Q+JiB3cmFwcGVkS2V5
LCBWZWN0b3I8dWludDhfdD4mIGtleSkgZmluYWw7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogICAgIHZvaWQgc3RvcEluZGV4ZWREYXRhYmFzZSgpOwotI2VuZGlmCiAK
ICAgICBVUkwgbV91cmw7CiAgICAgU3RyaW5nIG1faWRlbnRpZmllcjsKQEAgLTE3MSw5ICsxNjcs
NyBAQCBwcml2YXRlOgogCiAgICAgUmVmPFNlY3VyaXR5T3JpZ2luPiBtX3RvcE9yaWdpbjsKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxJREJDbGllbnQ6OklEQkNv
bm5lY3Rpb25Qcm94eT4gbV9jb25uZWN0aW9uUHJveHk7Ci0jZW5kaWYKIAogICAgIFJlZlB0cjxT
b2NrZXRQcm92aWRlcj4gbV9zb2NrZXRQcm92aWRlcjsKIApJbmRleDogU291cmNlL1dlYkNvcmUv
d29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvd29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHAJKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyTWVzc2FnaW5nUHJveHkuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC04MywxMSArODMsNyBAQCB2b2lkIFdvcmtlck1lc3NhZ2luZ1Byb3h5Ojpz
dGFydFdvcmtlckdsCiAgICAgV29ya2VyVGhyZWFkU3RhcnRNb2RlIHN0YXJ0TW9kZSA9IG1faW5z
cGVjdG9yUHJveHktPndvcmtlclN0YXJ0TW9kZSgqbV9zY3JpcHRFeGVjdXRpb25Db250ZXh0Lmdl
dCgpKTsKICAgICBTdHJpbmcgaWRlbnRpZmllciA9IG1faW5zcGVjdG9yUHJveHktPmlkZW50aWZp
ZXIoKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIElEQkNsaWVudDo6SURC
Q29ubmVjdGlvblByb3h5KiBwcm94eSA9IGRvY3VtZW50LmlkYkNvbm5lY3Rpb25Qcm94eSgpOwot
I2Vsc2UKLSAgICBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogcHJveHkgPSBudWxscHRy
OwotI2VuZGlmCiAKICAgICBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIgPSBkb2N1bWVu
dC5zb2NrZXRQcm92aWRlcigpOwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtl
clRocmVhZC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJU
aHJlYWQuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlclRocmVhZC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkxLDE0ICs5MSw5IEBAIFdvcmtlclRo
cmVhZDo6V29ya2VyVGhyZWFkKGNvbnN0IFdvcmtlclAKICAgICAsIG1fd29ya2VyUmVwb3J0aW5n
UHJveHkod29ya2VyUmVwb3J0aW5nUHJveHkpCiAgICAgLCBtX3J1bnRpbWVGbGFncyhydW50aW1l
RmxhZ3MpCiAgICAgLCBtX3N0YXJ0dXBEYXRhKG1ha2VVbmlxdWU8V29ya2VyVGhyZWFkU3RhcnR1
cERhdGE+KHBhcmFtcywgc291cmNlQ29kZSwgc3RhcnRNb2RlLCB0b3BPcmlnaW4pKQotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgICwgbV9pZGJDb25uZWN0aW9uUHJveHkoY29ubmVj
dGlvblByb3h5KQotI2VuZGlmCiAgICAgLCBtX3NvY2tldFByb3ZpZGVyKHNvY2tldFByb3ZpZGVy
KQogewotI2lmICFFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSAgICBVTlVTRURfUEFSQU0oY29u
bmVjdGlvblByb3h5KTsKLSNlbmRpZgogICAgICsrd29ya2VyVGhyZWFkQ291bnRlcjsKIH0KIApA
QCAtMTU5LDExICsxNTQsNyBAQCB2b2lkIFdvcmtlclRocmVhZDo6ZXZhbHVhdGVTY3JpcHRJZk5l
Y2VzCiAKIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBXb3JrZXJUaHJlYWQ6OmlkYkNv
bm5lY3Rpb25Qcm94eSgpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgcmV0
dXJuIG1faWRiQ29ubmVjdGlvblByb3h5LmdldCgpOwotI2Vsc2UKLSAgICByZXR1cm4gbnVsbHB0
cjsKLSNlbmRpZgogfQogCiBTb2NrZXRQcm92aWRlciogV29ya2VyVGhyZWFkOjpzb2NrZXRQcm92
aWRlcigpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmgJKHJldmlzaW9u
IDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmgJKHdvcmtp
bmcgY29weSkKQEAgLTEyNCw5ICsxMjQsNyBAQCBwcml2YXRlOgogICAgIE5vdGlmaWNhdGlvbkNs
aWVudCogbV9ub3RpZmljYXRpb25DbGllbnQgeyBudWxscHRyIH07CiAjZW5kaWYKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxJREJDbGllbnQ6OklEQkNvbm5lY3Rp
b25Qcm94eT4gbV9pZGJDb25uZWN0aW9uUHJveHk7Ci0jZW5kaWYKICAgICBSZWZQdHI8U29ja2V0
UHJvdmlkZXI+IG1fc29ja2V0UHJvdmlkZXI7CiB9OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93
b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VX
b3JrZXJUaHJlYWRQcm94eS5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJDb3Jl
L3dvcmtlcnMvc2VydmljZS9jb250ZXh0L1NlcnZpY2VXb3JrZXJUaHJlYWRQcm94eS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTgzLDExICs4Myw3IEBAIHN0YXRpYyBpbmxpbmUgVW5pcXVlUmVmPFBh
Z2U+IGNyZWF0ZVBhZ2UKIAogc3RhdGljIGlubGluZSBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Q
cm94eSogaWRiQ29ubmVjdGlvblByb3h5KERvY3VtZW50JiBkb2N1bWVudCkKIHsKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICByZXR1cm4gZG9jdW1lbnQuaWRiQ29ubmVjdGlvblBy
b3h5KCk7Ci0jZWxzZQotICAgIHJldHVybiBudWxscHRyOwotI2VuZGlmCiB9CiAKIHN0YXRpYyBI
YXNoU2V0PFNlcnZpY2VXb3JrZXJUaHJlYWRQcm94eSo+JiBhbGxTZXJ2aWNlV29ya2VyVGhyZWFk
UHJveGllcygpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrbGV0cy9Xb3JrbGV0R2xvYmFsU2Nv
cGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93b3JrbGV0cy9Xb3JrbGV0R2xvYmFs
U2NvcGUuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYkNvcmUvd29ya2xldHMvV29y
a2xldEdsb2JhbFNjb3BlLmgJKHdvcmtpbmcgY29weSkKQEAgLTk3LDkgKzk3LDcgQEAgcHJvdGVj
dGVkOgogICAgIFdvcmtsZXRHbG9iYWxTY29wZShEb2N1bWVudCYsIFJlZjxKU0M6OlZNPiYmLCBT
Y3JpcHRTb3VyY2VDb2RlJiYpOwogCiBwcml2YXRlOgotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBpZGJDb25uZWN0aW9uUHJv
eHkoKSBmaW5hbCB7IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOyByZXR1cm4gbnVsbHB0cjsgfQotI2Vu
ZGlmCiAKICAgICAvLyBFdmVudFRhcmdldC4KICAgICBFdmVudFRhcmdldEludGVyZmFjZSBldmVu
dFRhcmdldEludGVyZmFjZSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJuIFdvcmtsZXRHbG9iYWxTY29w
ZUV2ZW50VGFyZ2V0SW50ZXJmYWNlVHlwZTsgfQpJbmRleDogU291cmNlL1dlYkluc3BlY3RvclVJ
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjEtMDMtMjYgIFNhbSBXZWluaWcgIDx3
ZWluaWdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFT
RSAmIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMsIGl0IHNlZW1zIGxpa2UgaXQg
aXMgb24gZm9yIGFsbCBwb3J0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjIzODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBWZXJzaW9ucy9JbnNwZWN0b3ItaU9TLTE0LjAuanNvbjoKKyAgICAgICAg
KiBWZXJzaW9ucy9JbnNwZWN0b3ItaU9TLTE0LjUuanNvbjoKKyAgICAgICAgVXBkYXRlIGZvciBy
ZW1vdmVkIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFIGNvbmRpdGlvbmFsLgorCiAyMDIxLTAzLTI2
ICBKZXNzaWUgQmVybGluICA8amJlcmxpbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0ZSB0
aGUgQkVGT1JFL1NJTkNFLCBTWVNURU1fVkVSU0lPTl9QUkVGSVgsIGFuZCBNQUNPU1hfREVQTE9Z
TUVOVF9UQVJHRVQgZmxhZ3MKSW5kZXg6IFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9WZXJzaW9ucy9J
bnNwZWN0b3ItaU9TLTE0LjAuanNvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViSW5zcGVjdG9y
VUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC4wLmpzb24JKHJldmlzaW9uIDI3NTEwNSkKKysr
IFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9WZXJzaW9ucy9JbnNwZWN0b3ItaU9TLTE0LjAuanNvbgko
d29ya2luZyBjb3B5KQpAQCAtMjcyOCw3ICsyNzI4LDYgQEAKICwKIHsKICAgICAiZG9tYWluIjog
IkluZGV4ZWREQiIsCi0gICAgImNvbmRpdGlvbiI6ICJkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFKSAmJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSIsCiAgICAgImRlYnVnZ2FibGVUeXBl
cyI6IFsicGFnZSIsICJ3ZWItcGFnZSJdLAogICAgICJ0YXJnZXRUeXBlcyI6IFsicGFnZSJdLAog
ICAgICJ0eXBlcyI6IFsKSW5kZXg6IFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9WZXJzaW9ucy9JbnNw
ZWN0b3ItaU9TLTE0LjUuanNvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViSW5zcGVjdG9yVUkv
VmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC41Lmpzb24JKHJldmlzaW9uIDI3NTEwNSkKKysrIFNv
dXJjZS9XZWJJbnNwZWN0b3JVSS9WZXJzaW9ucy9JbnNwZWN0b3ItaU9TLTE0LjUuanNvbgkod29y
a2luZyBjb3B5KQpAQCAtMjc2OCw3ICsyNzY4LDYgQEAKICwKIHsKICAgICAiZG9tYWluIjogIklu
ZGV4ZWREQiIsCi0gICAgImNvbmRpdGlvbiI6ICJkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFKSAmJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSIsCiAgICAgImRlYnVnZ2FibGVUeXBlcyI6
IFsicGFnZSIsICJ3ZWItcGFnZSJdLAogICAgICJ0YXJnZXRUeXBlcyI6IFsicGFnZSJdLAogICAg
ICJ0eXBlcyI6IFsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDY2IEBACisyMDIxLTAzLTI2
ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxF
X0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBp
dCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFT
RSAmIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgorCisg
ICAgICAgICogTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVu
dC5jcHA6CisgICAgICAgICogTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rp
b25Ub0NsaWVudC5oOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJT
ZXJ2ZXIuY3BwOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJTZXJ2
ZXIuaDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLm1l
c3NhZ2VzLmluOgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmNyZWF0ZU5ldHdvcmtDb25uZWN0aW9u
VG9XZWJQcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmFkZFdlYnNp
dGVEYXRhU3RvcmUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZGVzdHJveVNl
c3Npb24pOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZmV0Y2hXZWJzaXRlRGF0
YSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpkZWxldGVXZWJzaXRlRGF0YSk6
CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpkZWxldGVXZWJzaXRlRGF0YUZvck9y
aWdpbnMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlQW5kUmVzdHJp
Y3RXZWJzaXRlRGF0YUZvclJlZ2lzdHJhYmxlRG9tYWlucyk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtQcm9jZXNzOjpyZWdpc3RyYWJsZURvbWFpbnNXaXRoV2Vic2l0ZURhdGEpOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6cHJlcGFyZVRvU3VzcGVuZCk6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpyZXN1bWUpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3Jr
UHJvY2Vzczo6cmVuYW1lT3JpZ2luSW5XZWJzaXRlRGF0YSk6CisgICAgICAgIChXZWJLaXQ6Ok5l
dHdvcmtQcm9jZXNzOjpzdG9yYWdlUXVvdGFNYW5hZ2VyKToKKyAgICAgICAgKFdlYktpdDo6TmV0
d29ya1Byb2Nlc3M6OmNvbm5lY3Rpb25Ub1dlYlByb2Nlc3NDbG9zZWQpOgorICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmg6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQ
cm9jZXNzOjpTZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcjo6aWRiUm9vdFBhdGggY29uc3QpOgor
ICAgICAgICAqIFNoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5jcHA6Cisg
ICAgICAgICogU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvSURCVXRpbGl0aWVzLmg6CisgICAg
ICAgICogU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0LmNwcDoKKyAgICAg
ICAgKiBTaGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJSZXN1bHQuaDoKKyAgICAgICAg
KiBTaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcDoKKyAgICAgICAgKElQQzo6QXJndW1l
bnRDb2RlcjxJREJLZXlQYXRoPjo6ZGVjb2RlKToKKyAgICAgICAgKiBTaGFyZWQvV2ViQ29yZUFy
Z3VtZW50Q29kZXJzLmg6CisgICAgICAgICogU2hhcmVkL1dlYnNpdGVEYXRhU3RvcmVQYXJhbWV0
ZXJzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnM6OmVu
Y29kZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJz
OjpkZWNvZGUpOgorICAgICAgICAqIFNoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc1Byb3h5OjphZGRTZXNzaW9uKToKKyAgICAg
ICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6Y3JlYXRlU3ltTGlua0ZvckZpbGVVcGdy
YWRlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5Lmg6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpwYXJhbWV0ZXJzKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVy
LmNwcDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29u
bmVjdGlvblRvU2VydmVyLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhl
ZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5tZXNzYWdlcy5pbjoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViRGF0YWJhc2VQcm92aWRlcjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbik6
CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5oOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3Bw
OgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZFJlY2VpdmVN
ZXNzYWdlKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRD
bG9zZSk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6aWRiQ29u
bmVjdGlvblRvU2VydmVyKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NDb25uZWN0aW9uLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29u
dGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb246Omluc3RhbGxTZXJ2aWNlV29ya2VyKToKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpuZXR3
b3JrUHJvY2Vzc0Nvbm5lY3Rpb25DbG9zZWQpOgorCiAyMDIxLTAzLTI2ICBTYWlkIEFib3UtSGFs
bGF3YSAgPHNhaWRAYXBwbGUuY29tPgogCiAgICAgICAgIEFsbG93IGxvZ2dpbmcgbWluaW1hbCBp
bmZvIGFib3V0IHVwbG9hZGluZyBtZWRpYSBmaWxlcyBpbiB0aGUgc3lzdGVtIGRpYWdub3NlCklu
ZGV4OiBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmNw
cAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3
b3JrUHJvY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5Miw5ICszOTIsNyBAQCB2b2lkIE5l
dHdvcmtQcm9jZXNzOjpjcmVhdGVOZXR3b3JrQ29ubmVjCiAKICAgICBtX3N0b3JhZ2VNYW5hZ2Vy
U2V0LT5hZGRDb25uZWN0aW9uKGNvbm5lY3Rpb24uY29ubmVjdGlvbigpKTsKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHdlYklEQlNlcnZlcihzZXNzaW9uSUQpLmFkZENvbm5l
Y3Rpb24oY29ubmVjdGlvbi5jb25uZWN0aW9uKCksIGlkZW50aWZpZXIpOwotI2VuZGlmCiB9CiAK
IHZvaWQgTmV0d29ya1Byb2Nlc3M6OmNsZWFyQ2FjaGVkQ3JlZGVudGlhbHMoUEFMOjpTZXNzaW9u
SUQgc2Vzc2lvbklEKQpAQCAtNDEyLDkgKzQxMCw3IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmFk
ZFdlYnNpdGVEYXRhU3RvcmUKIAogICAgIGFkZFNlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VyKHNl
c3Npb25JRCwgcGFyYW1ldGVycy5wZXJPcmlnaW5TdG9yYWdlUXVvdGEsIHBhcmFtZXRlcnMucGVy
VGhpcmRQYXJ0eU9yaWdpblN0b3JhZ2VRdW90YSwgcGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJl
Y3RvcnksIHBhcmFtZXRlcnMuY2FjaGVTdG9yYWdlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGFkZEluZGV4ZWREYXRhYmFzZVNl
c3Npb24oc2Vzc2lvbklELCBwYXJhbWV0ZXJzLmluZGV4ZWREYXRhYmFzZURpcmVjdG9yeSwgcGFy
YW1ldGVycy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlm
CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgYWRkU2VydmljZVdvcmtlclNlc3Np
b24oc2Vzc2lvbklELCBwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJQcm9jZXNzVGVybWluYXRpb25E
ZWxheUVuYWJsZWQsIFdURk1vdmUocGFyYW1ldGVycy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9u
RGlyZWN0b3J5KSwgcGFyYW1ldGVycy5zZXJ2aWNlV29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5
RXh0ZW5zaW9uSGFuZGxlKTsKQEAgLTU1Nyw5ICs1NTMsNyBAQCB2b2lkIE5ldHdvcmtQcm9jZXNz
OjpkZXN0cm95U2Vzc2lvbihQQUw6CiAKICAgICBtX3N0b3JhZ2VNYW5hZ2VyU2V0LT5yZW1vdmUo
c2Vzc2lvbklEKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHJlbW92ZVdl
YklEQlNlcnZlcklmUG9zc2libGUoc2Vzc2lvbklEKTsKLSNlbmRpZgogfQogCiAjaWYgRU5BQkxF
KFJFU09VUkNFX0xPQURfU1RBVElTVElDUykKQEAgLTE0OTksNyArMTQ5Myw2IEBAIHZvaWQgTmV0
d29ya1Byb2Nlc3M6OmZldGNoV2Vic2l0ZURhdGEoUEEKICAgICAgICAgY2FsbGJhY2tBZ2dyZWdh
dG9yLT5tX3dlYnNpdGVEYXRhLmhvc3ROYW1lc1dpdGhIU1RTQ2FjaGUgPSBob3N0TmFtZXNXaXRo
SFNUU0NhY2hlKHNlc3Npb25JRCk7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIGF1dG8gcGF0aCA9IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsK
ICAgICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vi
c2l0ZURhdGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMpKSB7CiAgICAgICAgIHdlYklEQlNlcnZl
cihzZXNzaW9uSUQpLmdldE9yaWdpbnMoW2NhbGxiYWNrQWdncmVnYXRvcl0oYXV0byYmIG9yaWdp
bnMpIHsKQEAgLTE1MDcsNyArMTUwMCw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmZldGNoV2Vi
c2l0ZURhdGEoUEEKICAgICAgICAgICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fd2Vic2l0
ZURhdGEuZW50cmllcy5hcHBlbmQoeyBvcmlnaW5zLnRha2VBbnkoKSwgV2Vic2l0ZURhdGFUeXBl
OjpJbmRleGVkREJEYXRhYmFzZXMsIDAgfSk7CiAgICAgICAgIH0pOwogICAgIH0KLSNlbmRpZgog
CiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIHBhdGggPSBtX3NlcnZpY2VXb3JrZXJJ
bmZvLmdldChzZXNzaW9uSUQpLmRhdGFiYXNlUGF0aDsKQEAgLTE1ODAsMTAgKzE1NzIsOCBAQCB2
b2lkIE5ldHdvcmtQcm9jZXNzOjpkZWxldGVXZWJzaXRlRGF0YShQCiAgICAgaWYgKHdlYnNpdGVE
YXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpMb2NhbFN0b3JhZ2UpICYmIG1fc3Rv
cmFnZU1hbmFnZXJTZXQtPmNvbnRhaW5zKHNlc3Npb25JRCkpCiAgICAgICAgIG1fc3RvcmFnZU1h
bmFnZXJTZXQtPmRlbGV0ZUxvY2FsU3RvcmFnZU1vZGlmaWVkU2luY2Uoc2Vzc2lvbklELCBtb2Rp
ZmllZFNpbmNlLCBbY2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7CiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0
YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykgJiYgIXNlc3Npb25JRC5pc0VwaGVtZXJhbCgpKQog
ICAgICAgICB3ZWJJREJTZXJ2ZXIoc2Vzc2lvbklEKS5jbG9zZUFuZERlbGV0ZURhdGFiYXNlc01v
ZGlmaWVkU2luY2UobW9kaWZpZWRTaW5jZSwgW2NsZWFyVGFza3NIYW5kbGVyXSB7IH0pOwotI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgYm9vbCBjbGVhclNlcnZpY2VX
b3JrZXJzID0gd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkRPTUNh
Y2hlKSB8fCB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6U2Vydmlj
ZVdvcmtlclJlZ2lzdHJhdGlvbnMpOwpAQCAtMTY5NCwxMCArMTY4NCw4IEBAIHZvaWQgTmV0d29y
a1Byb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRhRm8KICAgICBpZiAod2Vic2l0ZURhdGFUeXBlcy5j
b250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkxvY2FsU3RvcmFnZSkgJiYgbV9zdG9yYWdlTWFuYWdl
clNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkKICAgICAgICAgbV9zdG9yYWdlTWFuYWdlclNldC0+
ZGVsZXRlTG9jYWxTdG9yYWdlRm9yT3JpZ2lucyhzZXNzaW9uSUQsIG9yaWdpbkRhdGFzLCBbY2xl
YXJUYXNrc0hhbmRsZXJdIHsgfSk7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAg
ICBpZiAod2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWRE
QkRhdGFiYXNlcykgJiYgIXNlc3Npb25JRC5pc0VwaGVtZXJhbCgpKQogICAgICAgICB3ZWJJREJT
ZXJ2ZXIoc2Vzc2lvbklEKS5jbG9zZUFuZERlbGV0ZURhdGFiYXNlc0Zvck9yaWdpbnMob3JpZ2lu
RGF0YXMsIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsKLSNlbmRpZgogCiAjaWYgRU5BQkxFKFNF
UlZJQ0VfV09SS0VSKQogICAgIGJvb2wgY2xlYXJTZXJ2aWNlV29ya2VycyA9IHdlYnNpdGVEYXRh
VHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpET01DYWNoZSkgfHwgd2Vic2l0ZURhdGFU
eXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OlNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25z
KTsKQEAgLTE4OTYsNyArMTg4NCw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmRlbGV0ZUFuZFJl
c3RyaWN0V2UKICAgICAgICAgfQogICAgIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQogICAgIGF1dG8gcGF0aCA9IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKICAg
ICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0
ZURhdGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMpKSB7CiAgICAgICAgIHdlYklEQlNlcnZlcihz
ZXNzaW9uSUQpLmdldE9yaWdpbnMoW3RoaXMsIHByb3RlY3RlZFRoaXMgPSBtYWtlUmVmKCp0aGlz
KSwgc2Vzc2lvbklELCBjYWxsYmFja0FnZ3JlZ2F0b3IsIGRvbWFpbnNUb0RlbGV0ZUFsbE5vbkNv
b2tpZVdlYnNpdGVEYXRhRm9yXShhdXRvJiYgb3JpZ2lucykgewpAQCAtMTkwNyw3ICsxODk0LDYg
QEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlQW5kUmVzdHJpY3RXZQogICAgICAgICAgICAg
d2ViSURCU2VydmVyKHNlc3Npb25JRCkuY2xvc2VBbmREZWxldGVEYXRhYmFzZXNGb3JPcmlnaW5z
KG9yaWdpbnNUb0RlbGV0ZSwgW2NhbGxiYWNrQWdncmVnYXRvcl0geyB9KTsKICAgICAgICAgfSk7
CiAgICAgfQotI2VuZGlmCiAgICAgCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIHBh
dGggPSBtX3NlcnZpY2VXb3JrZXJJbmZvLmdldChzZXNzaW9uSUQpLmRhdGFiYXNlUGF0aDsKQEAg
LTIwMzMsNyArMjAxOSw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlZ2lzdHJhYmxlRG9tYWlu
c1cKICAgICAgICAgfSk7CiAgICAgfQogICAgIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQogICAgIGF1dG8gcGF0aCA9IG1faWRiRGF0YWJhc2VQYXRocy5nZXQoc2Vzc2lvbklEKTsKICAg
ICBpZiAoIXBhdGguaXNFbXB0eSgpICYmIHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0
ZURhdGFUeXBlOjpJbmRleGVkREJEYXRhYmFzZXMpKSB7CiAgICAgICAgIHdlYklEQlNlcnZlcihz
ZXNzaW9uSUQpLmdldE9yaWdpbnMoW2NhbGxiYWNrQWdncmVnYXRvcl0oYXV0byYmIG9yaWdpbnMp
IHsKQEAgLTIwNDEsNyArMjAyNiw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlZ2lzdHJhYmxl
RG9tYWluc1cKICAgICAgICAgICAgICAgICBjYWxsYmFja0FnZ3JlZ2F0b3ItPm1fd2Vic2l0ZURh
dGEuZW50cmllcy5hcHBlbmQoeyBvcmlnaW5zLnRha2VBbnkoKSwgV2Vic2l0ZURhdGFUeXBlOjpJ
bmRleGVkREJEYXRhYmFzZXMsIDAgfSk7CiAgICAgICAgIH0pOwogICAgIH0KLSNlbmRpZgogICAg
IAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBwYXRoID0gbV9zZXJ2aWNlV29ya2Vy
SW5mby5nZXQoc2Vzc2lvbklEKS5kYXRhYmFzZVBhdGg7CkBAIC0yMjA0LDcgKzIxODgsNyBAQCB2
b2lkIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlVG9TdXNwZW5kKGJvCiB7CiAgICAgUkVMRUFTRV9M
T0coUHJvY2Vzc1N1c3BlbnNpb24sICIlcCAtIE5ldHdvcmtQcm9jZXNzOjpwcmVwYXJlVG9TdXNw
ZW5kKCksIGlzU3VzcGVuc2lvbkltbWluZW50PSVkIiwgdGhpcywgaXNTdXNwZW5zaW9uSW1taW5l
bnQpOwogCi0jaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkgJiYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCisjaWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKICAgICBmb3IgKGF1dG8mIHNlcnZlciA6IG1f
d2ViSURCU2VydmVycy52YWx1ZXMoKSkKICAgICAgICAgc2VydmVyLT5zdXNwZW5kKCk7CiAjZW5k
aWYKQEAgLTIyNzQsNyArMjI1OCw3IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlc3VtZSgpCiAg
ICAgZm9yIChhdXRvJiBzZXJ2ZXIgOiBtX3N3U2VydmVycy52YWx1ZXMoKSkKICAgICAgICAgc2Vy
dmVyLT5lbmRTdXNwZW5zaW9uKCk7CiAjZW5kaWYKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSAm
JiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAg
IGZvciAoYXV0byYgc2VydmVyIDogbV93ZWJJREJTZXJ2ZXJzLnZhbHVlcygpKQogICAgICAgICBz
ZXJ2ZXItPnJlc3VtZSgpOwogI2VuZGlmCkBAIC0yMzI4LDcgKzIzMTIsNiBAQCB2b2lkIE5ldHdv
cmtQcm9jZXNzOjpyZWdpc3RlclVSTFNjaGVtZUFzCiAgICAgTGVnYWN5U2NoZW1lUmVnaXN0cnk6
OnJlZ2lzdGVyVVJMU2NoZW1lQXNOb0FjY2VzcyhzY2hlbWUpOwogfQogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCiBSZWY8V2ViSURCU2VydmVyPiBOZXR3b3JrUHJvY2Vzczo6Y3JlYXRl
V2ViSURCU2VydmVyKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCkKIHsKICAgICBTdHJpbmcgcGF0
aDsKQEAgLTIzODgsOCArMjM3MSw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OnJlbW92ZVdlYklE
QlNlcnZlckkKICAgICBtX3dlYklEQlNlcnZlcnMucmVtb3ZlKGl0ZXJhdG9yKTsKIH0KIAotI2Vu
ZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiB2b2lkIE5ldHdvcmtQcm9jZXNzOjpz
eW5jTG9jYWxTdG9yYWdlKENvbXBsZXRpb25IYW5kbGVyPHZvaWQoKT4mJiBjb21wbGV0aW9uSGFu
ZGxlcikKIHsKICAgICBtX3N0b3JhZ2VNYW5hZ2VyU2V0LT53YWl0VW50aWxTeW5jaW5nTG9jYWxT
dG9yYWdlRmluaXNoZWQoKTsKQEAgLTI0MzQsMTMgKzI0MTUsMTEgQEAgdm9pZCBOZXR3b3JrUHJv
Y2Vzczo6cmVuYW1lT3JpZ2luSW5XZWJzaQogICAgICAgICAgICAgbV9zdG9yYWdlTWFuYWdlclNl
dC0+cmVuYW1lT3JpZ2luKHNlc3Npb25JRCwgb2xkTmFtZSwgbmV3TmFtZSwgW2FnZ3JlZ2F0b3Jd
IHsgfSk7CiAgICAgfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgaWYgKGRh
dGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsK
ICAgICAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwog
ICAgICAgICBpZiAoIXBhdGguaXNFbXB0eSgpKQogICAgICAgICAgICAgd2ViSURCU2VydmVyKHNl
c3Npb25JRCkucmVuYW1lT3JpZ2luKG9sZE9yaWdpbiwgbmV3T3JpZ2luLCBbYWdncmVnYXRvcl0g
eyB9KTsKICAgICB9Ci0jZW5kaWYKIH0KIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKQEAg
LTI1MjQsMTkgKzI1MDMsMTMgQEAgUmVmUHRyPFN0b3JhZ2VRdW90YU1hbmFnZXI+IE5ldHdvcmtQ
cm9jZQogICAgIGlmICghc2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXIpCiAgICAgICAgIHJldHVy
biBudWxscHRyOwogCi0gICAgU3RyaW5nIGlkYlJvb3RQYXRoOwotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotICAgIGlkYlJvb3RQYXRoID0gc2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXIt
PmlkYlJvb3RQYXRoKCk7Ci0jZW5kaWYKKyAgICBTdHJpbmcgaWRiUm9vdFBhdGggPSBzZXNzaW9u
U3RvcmFnZVF1b3RhTWFuYWdlci0+aWRiUm9vdFBhdGgoKTsKICAgICBTdG9yYWdlUXVvdGFNYW5h
Z2VyOjpVc2FnZUdldHRlciB1c2FnZUdldHRlciA9IFtjYWNoZVJvb3RQYXRoID0gc2Vzc2lvblN0
b3JhZ2VRdW90YU1hbmFnZXItPmNhY2hlUm9vdFBhdGgoKS5pc29sYXRlZENvcHkoKSwgaWRiUm9v
dFBhdGggPSBpZGJSb290UGF0aC5pc29sYXRlZENvcHkoKSwgb3JpZ2luID0gb3JpZ2luLmlzb2xh
dGVkQ29weSgpXShTdG9yYWdlUXVvdGFNYW5hZ2VyOjpTaG91bGRQcmludFVzYWdlRGV0YWlsIHNo
b3VsZFByaW50dXNhZ2VEZXRhaWwpIHsKICAgICAgICAgQVNTRVJUKCFpc01haW5SdW5Mb29wKCkp
OwogCiAgICAgICAgIHVpbnQ2NF90IGNhY2hlVXNhZ2UgPSBDYWNoZVN0b3JhZ2U6OkVuZ2luZTo6
ZGlza1VzYWdlKGNhY2hlUm9vdFBhdGgsIG9yaWdpbik7Ci0gICAgICAgIHVpbnQ2NF90IHVzYWdl
ID0gY2FjaGVVc2FnZTsKKyAgICAgICAgdWludDY0X3QgdXNhZ2UgPSBjYWNoZVVzYWdlICsgSURC
U2VydmVyOjpJREJTZXJ2ZXI6OmRpc2tVc2FnZShpZGJSb290UGF0aCwgb3JpZ2luKTsKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotICAgICAgICB1c2FnZSArPSBJREJTZXJ2ZXI6OklE
QlNlcnZlcjo6ZGlza1VzYWdlKGlkYlJvb3RQYXRoLCBvcmlnaW4pOwotI2VuZGlmCiAgICAgICAg
IGlmIChzaG91bGRQcmludHVzYWdlRGV0YWlsID09IFN0b3JhZ2VRdW90YU1hbmFnZXI6OlNob3Vs
ZFByaW50VXNhZ2VEZXRhaWw6OlllcykKICAgICAgICAgICAgIFdURkxvZ0Fsd2F5cygiU3RvcmFn
ZVF1b3RhTWFuYWdlcjo6VXNhZ2VHZXR0ZXIgQ2FjaGUgdXNhZ2UgJSIgUFJJdTY0ICIsIElEQiB1
c2FnZSAlIiBQUkl1NjQsIGNhY2hlVXNhZ2UsIHVzYWdlKTsKIApAQCAtMjcwNSwxMiArMjY3OCwx
MCBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpjb25uZWN0aW9uVG9XZWJQcm9jCiB7CiAgICAgbV9z
dG9yYWdlTWFuYWdlclNldC0+cmVtb3ZlQ29ubmVjdGlvbihjb25uZWN0aW9uKTsKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGF1dG8qIHdlYklEQlNlcnZlciA9IG1fd2ViSURC
U2VydmVycy5nZXQoc2Vzc2lvbklEKTsKICAgICBBU1NFUlQod2ViSURCU2VydmVyKTsKICAgICB3
ZWJJREJTZXJ2ZXItPnJlbW92ZUNvbm5lY3Rpb24oY29ubmVjdGlvbik7CiAgICAgcmVtb3ZlV2Vi
SURCU2VydmVySWZQb3NzaWJsZShzZXNzaW9uSUQpOwotI2VuZGlmCiB9CiAKIE5ldHdvcmtDb25u
ZWN0aW9uVG9XZWJQcm9jZXNzKiBOZXR3b3JrUHJvY2Vzczo6d2ViUHJvY2Vzc0Nvbm5lY3Rpb24o
UHJvY2Vzc0lkZW50aWZpZXIgaWRlbnRpZmllcikgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzLmgJKHJldmlzaW9uIDI3NTEwNSkKKysr
IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAkod29ya2luZyBj
b3B5KQpAQCAtMjk3LDkgKzI5Nyw3IEBAIHB1YmxpYzoKICAgICBOZXR3b3JrQ29udGVudFJ1bGVM
aXN0TWFuYWdlciYgbmV0d29ya0NvbnRlbnRSdWxlTGlzdE1hbmFnZXIoKSB7IHJldHVybiBtX25l
dHdvcmtDb250ZW50UnVsZUxpc3RNYW5hZ2VyOyB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogICAgIFdlYklEQlNlcnZlciYgd2ViSURCU2VydmVyKFBBTDo6U2Vzc2lv
bklEKTsKLSNlbmRpZgogCiAgICAgdm9pZCBzeW5jTG9jYWxTdG9yYWdlKENvbXBsZXRpb25IYW5k
bGVyPHZvaWQoKT4mJik7CiAKQEAgLTQ3NiwxMiArNDc0LDEwIEBAIHByaXZhdGU6CiAgICAgdm9p
ZCByZWdpc3RlclVSTFNjaGVtZUFzTm9BY2Nlc3MoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAgICAg
dm9pZCByZWdpc3RlclVSTFNjaGVtZUFzQ09SU0VuYWJsZWQoY29uc3QgU3RyaW5nJikgY29uc3Q7
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICB2b2lkIGFkZEluZGV4ZWREYXRh
YmFzZVNlc3Npb24oUEFMOjpTZXNzaW9uSUQsIFN0cmluZyYsIFNhbmRib3hFeHRlbnNpb246Okhh
bmRsZSYpOwogICAgIFJlZjxXZWJJREJTZXJ2ZXI+IGNyZWF0ZVdlYklEQlNlcnZlcihQQUw6OlNl
c3Npb25JRCk7CiAgICAgdm9pZCBzZXRTZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcklEQlJvb3RQ
YXRoKFBBTDo6U2Vzc2lvbklELCBjb25zdCBTdHJpbmcmIGlkYlJvb3RQYXRoKTsKICAgICB2b2lk
IHJlbW92ZVdlYklEQlNlcnZlcklmUG9zc2libGUoUEFMOjpTZXNzaW9uSUQpOwotI2VuZGlmCiAK
ICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgdm9pZCBkaWRDcmVhdGVXb3JrZXJDb250
ZXh0UHJvY2Vzc0Nvbm5lY3Rpb24oY29uc3QgSVBDOjpBdHRhY2htZW50Jik7CkBAIC01MTksMTYg
KzUxNSwxMyBAQCBwcml2YXRlOgogICAgICAgICBhdXRvIGV4aXN0aW5nU3RvcmFnZVF1b3RhTWFu
YWdlcnMoKSB7IHJldHVybiBtX3N0b3JhZ2VRdW90YU1hbmFnZXJzLnZhbHVlcygpOyB9CiAKICAg
ICAgICAgY29uc3QgU3RyaW5nJiBjYWNoZVJvb3RQYXRoKCkgY29uc3QgeyByZXR1cm4gbV9jYWNo
ZVJvb3RQYXRoOyB9Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCisKICAgICAgICAgdm9p
ZCBzZXRJREJSb290UGF0aChjb25zdCBTdHJpbmcmIGlkYlJvb3RQYXRoKSB7IG1faWRiUm9vdFBh
dGggPSBpZGJSb290UGF0aDsgfQogICAgICAgICBjb25zdCBTdHJpbmcmIGlkYlJvb3RQYXRoKCkg
Y29uc3QgeyByZXR1cm4gbV9pZGJSb290UGF0aDsgfQotI2VuZGlmCiAKICAgICBwcml2YXRlOgog
ICAgICAgICBTdHJpbmcgbV9jYWNoZVJvb3RQYXRoOwotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgICAgICBTdHJpbmcgbV9pZGJSb290UGF0aDsKLSNlbmRpZgogICAgICAgICB1aW50
NjRfdCBtX2RlZmF1bHRRdW90YSB7IFdlYkNvcmU6OlN0b3JhZ2VRdW90YU1hbmFnZXI6OmRlZmF1
bHRRdW90YSgpIH07CiAgICAgICAgIHVpbnQ2NF90IG1fZGVmYXVsdFRoaXJkUGFydHlRdW90YSB7
IFdlYkNvcmU6OlN0b3JhZ2VRdW90YU1hbmFnZXI6OmRlZmF1bHRUaGlyZFBhcnR5UXVvdGEoKSB9
OwogICAgICAgICBIYXNoTWFwPFdlYkNvcmU6OkNsaWVudE9yaWdpbiwgUmVmUHRyPFdlYkNvcmU6
OlN0b3JhZ2VRdW90YU1hbmFnZXI+PiBtX3N0b3JhZ2VRdW90YU1hbmFnZXJzOwpAQCAtNTc1LDEw
ICs1NjgsOCBAQCBwcml2YXRlOgogICAgIFdlYlNRTGl0ZURhdGFiYXNlVHJhY2tlciBtX3dlYlNR
TGl0ZURhdGFiYXNlVHJhY2tlcjsKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgSGFzaE1hcDxQQUw6OlNlc3Npb25JRCwgU3RyaW5nPiBtX2lkYkRhdGFiYXNlUGF0
aHM7CiAgICAgSGFzaE1hcDxQQUw6OlNlc3Npb25JRCwgUmVmUHRyPFdlYklEQlNlcnZlcj4+IG1f
d2ViSURCU2VydmVyczsKLSNlbmRpZgogICAgIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikK
ICAgICBzdHJ1Y3QgU2VydmljZVdvcmtlckluZm8gewpJbmRleDogU291cmNlL1dlYktpdC9OZXR3
b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25u
ZWN0aW9uVG9DbGllbnQuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogI2luY2x1ZGUgIldl
YklEQkNvbm5lY3Rpb25Ub1NlcnZlck1lc3NhZ2VzLmgiCiAjaW5jbHVkZSAiV2ViSURCUmVzdWx0
LmgiCkBAIC0xOTksNSArMTk3LDMgQEAgdm9pZCBXZWJJREJDb25uZWN0aW9uVG9DbGllbnQ6OmRp
ZEdldEFsbAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRl
eGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmgJ
KHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhl
ZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsy
NSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJNZXNzYWdlU2VuZGVyLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9JREJDb25uZWN0
aW9uVG9DbGllbnQuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0luZGV4ZWREQi5oPgpAQCAtOTIsNSAr
OTAsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1By
b2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmNwcAkocmV2aXNpb24g
Mjc1MTA1KQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURC
U2VydmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzIsOCArMzIsNiBAQAogI2luY2x1ZGUgPFdl
YkNvcmUvU3RvcmFnZVF1b3RhTWFuYWdlci5oPgogI2luY2x1ZGUgPHd0Zi90aHJlYWRzL0JpbmFy
eVNlbWFwaG9yZS5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFj
ZSBXZWJLaXQgewogCiBSZWY8V2ViSURCU2VydmVyPiBXZWJJREJTZXJ2ZXI6OmNyZWF0ZShQQUw6
OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgZGlyZWN0b3J5LCBXZWJDb3JlOjpJ
REJTZXJ2ZXI6OklEQlNlcnZlcjo6U3RvcmFnZVF1b3RhTWFuYWdlclNwYWNlUmVxdWVzdGVyJiYg
c3BhY2VSZXF1ZXN0ZXIpCkBAIC00MTgsNCArNDE2LDMgQEAgdm9pZCBXZWJJREJTZXJ2ZXI6OmNs
b3NlKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5o
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4
ZWREQi9XZWJJREJTZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
Q29ubmVjdGlvbi5oIgogCiAjaW5jbHVkZSAiV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmgiCkBA
IC0xMDUsNSArMTAzLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAot
Ci0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dl
YklEQlNlcnZlci5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L05ldHdv
cmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXIubWVzc2FnZXMuaW4JKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNl
cnZlci5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAsNiBAQAogIyBPUiBU
T1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0KIG1lc3NhZ2VzIC0+IFdlYklEQlNlcnZlciB7CiAgICAgRGVsZXRlRGF0YWJhc2Uo
V2ViQ29yZTo6SURCUmVxdWVzdERhdGEgcmVxdWVzdERhdGEpCiAgICAgT3BlbkRhdGFiYXNlKFdl
YkNvcmU6OklEQlJlcXVlc3REYXRhIHJlcXVlc3REYXRhKQpAQCAtNTIsNSArNTAsMyBAQCBtZXNz
YWdlcyAtPiBXZWJJREJTZXJ2ZXIgewogCiAgICAgR2V0QWxsRGF0YWJhc2VOYW1lc0FuZFZlcnNp
b25zKFdlYkNvcmU6OklEQlJlc291cmNlSWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllciwgc3Ry
dWN0IFdlYkNvcmU6OkNsaWVudE9yaWdpbiBvcmlnaW4pIFdhbnRzQ29ubmVjdGlvbgogfQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAJKHJldmlzaW9uIDI3NTEwNSkKKysr
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI3MTYsNyArMjcxNiw2IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxNZWRpYUNvbnN0
cmFpbnRzPjo6ZGUKIH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiB2
b2lkIEFyZ3VtZW50Q29kZXI8SURCS2V5UGF0aD46OmVuY29kZShFbmNvZGVyJiBlbmNvZGVyLCBj
b25zdCBJREJLZXlQYXRoJiBrZXlQYXRoKQogewogICAgIGJvb2wgaXNTdHJpbmcgPSBXVEY6Omhv
bGRzX2FsdGVybmF0aXZlPFN0cmluZz4oa2V5UGF0aCk7CkBAIC0yNzQ1LDcgKzI3NDQsNiBAQCBi
b29sIEFyZ3VtZW50Q29kZXI8SURCS2V5UGF0aD46OmRlY29kZShECiAgICAgfQogICAgIHJldHVy
biB0cnVlOwogfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiB2b2lkIEFy
Z3VtZW50Q29kZXI8U2VydmljZVdvcmtlck9yQ2xpZW50RGF0YT46OmVuY29kZShFbmNvZGVyJiBl
bmNvZGVyLCBjb25zdCBTZXJ2aWNlV29ya2VyT3JDbGllbnREYXRhJiBkYXRhKQpJbmRleDogU291
cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xNjEsNiArMTYxLDcgQEAgc3RydWN0IFdpbmRvd0ZlYXR1cmVzOwog
ICAgIAogdGVtcGxhdGU8dHlwZW5hbWU+IGNsYXNzIFJlY3RFZGdlczsKIHVzaW5nIEZsb2F0Qm94
RXh0ZW50ID0gUmVjdEVkZ2VzPGZsb2F0PjsKK3VzaW5nIElEQktleVBhdGggPSBWYXJpYW50PFN0
cmluZywgVmVjdG9yPFN0cmluZz4+OwogCiAjaWYgUExBVEZPUk0oQ09DT0EpCiBzdHJ1Y3QgS2V5
cHJlc3NDb21tYW5kOwpAQCAtMjAxLDEwICsyMDIsNiBAQCBzdHJ1Y3QgTWVkaWFDb25zdHJhaW50
czsKIHN0cnVjdCBTZXJpYWxpemVkQXR0YWNobWVudERhdGE7CiAjZW5kaWYKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotdXNpbmcgSURCS2V5UGF0aCA9IFZhcmlhbnQ8U3RyaW5nLCBW
ZWN0b3I8U3RyaW5nPj47Ci0jZW5kaWYKLQogI2lmIEVOQUJMRShHUFVfUFJPQ0VTUykgJiYgRU5B
QkxFKFdFQkdMKQogc3RydWN0IEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlczsKICNlbmRpZgpA
QCAtNzIxLDE1ICs3MTgsMTEgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJD
b3JlOgogfTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIHRlbXBs
YXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6SURCS2V5UGF0aD4gewogICAgIHN0
YXRpYyB2b2lkIGVuY29kZShFbmNvZGVyJiwgY29uc3QgV2ViQ29yZTo6SURCS2V5UGF0aCYpOwog
ICAgIHN0YXRpYyBXQVJOX1VOVVNFRF9SRVRVUk4gYm9vbCBkZWNvZGUoRGVjb2RlciYsIFdlYkNv
cmU6OklEQktleVBhdGgmKTsKIH07CiAKLSNlbmRpZgotCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09S
S0VSKQogCiB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdlYkNvcmU6OlNlcnZpY2VX
b3JrZXJPckNsaWVudERhdGE+IHsKQEAgLTkwNCw3ICs4OTcsNiBAQCB0ZW1wbGF0ZTw+IHN0cnVj
dCBFbnVtVHJhaXRzPFdlYkNvcmU6Ok5vCiAgICAgPjsKIH07CiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6SW5kZXhl
ZERCOjpHZXRBbGxUeXBlPiB7CiAgICAgdXNpbmcgdmFsdWVzID0gRW51bVZhbHVlczwKICAgICAg
ICAgV2ViQ29yZTo6SW5kZXhlZERCOjpHZXRBbGxUeXBlLApAQCAtOTEyLDcgKzkwNCw2IEBAIHRl
bXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6SW4KICAgICAgICAgV2ViQ29yZTo6
SW5kZXhlZERCOjpHZXRBbGxUeXBlOjpWYWx1ZXMKICAgICA+OwogfTsKLSNlbmRpZgogCiAjaWYg
RU5BQkxFKE1FRElBX1NUUkVBTSkKIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29y
ZTo6UmVhbHRpbWVNZWRpYVNvdXJjZTo6VHlwZT4gewpJbmRleDogU291cmNlL1dlYktpdC9TaGFy
ZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvU2hhcmVkL1dlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzLmNwcAkocmV2aXNpb24gMjc1
MTA1KQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCwxMCArNDAsNyBAQCB2b2lkIFdlYnNpdGVEYXRhU3Rv
cmVQYXJhbWV0ZXJzOjplbmNvZGUoCiAgICAgZW5jb2RlciA8PCBuZXR3b3JrU2Vzc2lvblBhcmFt
ZXRlcnM7CiAgICAgZW5jb2RlciA8PCB1aVByb2Nlc3NDb29raWVTdG9yYWdlSWRlbnRpZmllcjsK
ICAgICBlbmNvZGVyIDw8IGNvb2tpZVN0b3JhZ2VQYXRoRXh0ZW5zaW9uSGFuZGxlOwotCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgZW5jb2RlciA8PCBpbmRleGVkRGF0YWJhc2VE
aXJlY3RvcnkgPDwgaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwotI2Vu
ZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgZW5jb2RlciA8PCBzZXJ2aWNl
V29ya2VyUmVnaXN0cmF0aW9uRGlyZWN0b3J5IDw8IHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25E
aXJlY3RvcnlFeHRlbnNpb25IYW5kbGUgPDwgc2VydmljZVdvcmtlclByb2Nlc3NUZXJtaW5hdGlv
bkRlbGF5RW5hYmxlZDsKQEAgLTc5LDcgKzc2LDYgQEAgT3B0aW9uYWw8V2Vic2l0ZURhdGFTdG9y
ZVBhcmFtZXRlcnM+IFdlYgogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogICAgIHBhcmFt
ZXRlcnMuY29va2llU3RvcmFnZVBhdGhFeHRlbnNpb25IYW5kbGUgPSBXVEZNb3ZlKCpjb29raWVT
dG9yYWdlUGF0aEV4dGVuc2lvbkhhbmRsZSk7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKICAgICBPcHRpb25hbDxTdHJpbmc+IGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeTsKICAgICBk
ZWNvZGVyID4+IGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeTsKICAgICBpZiAoIWluZGV4ZWREYXRh
YmFzZURpcmVjdG9yeSkKQEAgLTkxLDcgKzg3LDYgQEAgT3B0aW9uYWw8V2Vic2l0ZURhdGFTdG9y
ZVBhcmFtZXRlcnM+IFdlYgogICAgIGlmICghaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5z
aW9uSGFuZGxlKQogICAgICAgICByZXR1cm4gV1RGOjpudWxsb3B0OwogICAgIHBhcmFtZXRlcnMu
aW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlID0gV1RGTW92ZSgqaW5kZXhl
ZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgogCiAjaWYgRU5BQkxF
KFNFUlZJQ0VfV09SS0VSKQogICAgIE9wdGlvbmFsPFN0cmluZz4gc2VydmljZVdvcmtlclJlZ2lz
dHJhdGlvbkRpcmVjdG9yeTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL1dlYnNpdGVEYXRh
U3RvcmVQYXJhbWV0ZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvV2Vi
c2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuaAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dl
YktpdC9TaGFyZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuaAkod29ya2luZyBjb3B5KQpA
QCAtNTMsMTAgKzUzLDggQEAgc3RydWN0IFdlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzIHsKICAg
ICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgY29va2llU3RvcmFnZVBhdGhFeHRlbnNpb25IYW5k
bGU7CiAgICAgTmV0d29ya1Nlc3Npb25DcmVhdGlvblBhcmFtZXRlcnMgbmV0d29ya1Nlc3Npb25Q
YXJhbWV0ZXJzOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgU3RyaW5nIGlu
ZGV4ZWREYXRhYmFzZURpcmVjdG9yeTsKICAgICBTYW5kYm94RXh0ZW5zaW9uOjpIYW5kbGUgaW5k
ZXhlZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlOwotI2VuZGlmCiAKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCiAgICAgU3RyaW5nIHNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25E
aXJlY3Rvcnk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERC
L0lEQlV0aWxpdGllcy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9TaGFyZWQvRGF0
YWJhc2VzL0luZGV4ZWREQi9JREJVdGlsaXRpZXMuY3BwCShyZXZpc2lvbiAyNzUxMDUpCisrKyBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTMwLDggKzMwLDYgQEAKICNpbmNsdWRlIDxXZWJDb3JlL1NlY3Vy
aXR5T3JpZ2luLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJLaXQgewogCiBTdHJpbmcg
dW5pcXVlRGF0YWJhc2VJZGVudGlmaWVyKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25z
dCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYgb3BlbmluZ09yaWdpbiwgY29uc3QgV2ViQ29yZTo6
U2VjdXJpdHlPcmlnaW4mIG1haW5GcmFtZU9yaWdpbikKQEAgLTU2LDUgKzU0LDMgQEAgU3RyaW5n
IHVuaXF1ZURhdGFiYXNlSWRlbnRpZmllcihjb25zdCBTdAogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJLaXQKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYktpdC9TaGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9JREJVdGlsaXRpZXMuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxp
dGllcy5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFz
ZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMyArMjQs
MTAgQEAKICAqCiAgKi8KIAotI2lmbmRlZiBJREJVdGlsaXRpZXNfaAotI2RlZmluZSBJREJVdGls
aXRpZXNfaAorI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4K
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IGNsYXNzIFNlY3VyaXR5T3JpZ2luOwpAQCAtNDIsNiArMzksMyBAQCBuYW1lc3BhY2UgV2ViS2l0
IHsKIFN0cmluZyB1bmlxdWVEYXRhYmFzZUlkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBkYXRhYmFz
ZU5hbWUsIGNvbnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2luLCBjb25z
dCBXZWJDb3JlOjpTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKTsKICAgICAKIH0gLy8g
bmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0j
ZW5kaWYgLy8gSURCVXRpbGl0aWVzX2gKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFi
YXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlJlc3VsdC5jcHAJKHJldmlzaW9u
IDI3NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvV2Vi
SURCUmVzdWx0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYklEQlJlc3VsdC5oIgogCi0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJXZWJDb3JlQXJndW1lbnRDb2RlcnMuaCIKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CkBAIC01Niw1ICs1NCwzIEBAIGJvb2wgV2ViSURCUmVzdWx0OjpkZWNv
ZGUoSVBDOjpEZWNvZGVyJiAKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL0Rh
dGFiYXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9TaGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJSZXN1bHQuaAkocmV2aXNpb24g
Mjc1MTA1KQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJ
REJSZXN1bHQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiU2FuZGJveEV4
dGVuc2lvbi5oIgogI2luY2x1ZGUgPFdlYkNvcmUvSURCUmVzdWx0RGF0YS5oPgogI2luY2x1ZGUg
PHd0Zi9Ob25jb3B5YWJsZS5oPgpAQCAtNjYsNSArNjQsMyBAQCBwcml2YXRlOgogfTsKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94
eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3
b3JrUHJvY2Vzc1Byb3h5LmNwcAkocmV2aXNpb24gMjc1MTA1KQorKysgU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMTM0NCwxMSArMTM0NCw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6YWRkU2Vzc2lv
bihXZWIKICAgICBpZiAoY2FuU2VuZE1lc3NhZ2UoKSAmJiBzZW5kUGFyYW1ldGVyc1RvTmV0d29y
a1Byb2Nlc3MgPT0gU2VuZFBhcmFtZXRlcnNUb05ldHdvcmtQcm9jZXNzOjpZZXMpCiAgICAgICAg
IHNlbmQoTWVzc2FnZXM6Ok5ldHdvcmtQcm9jZXNzOjpBZGRXZWJzaXRlRGF0YVN0b3JlIHsgc3Rv
cmUucGFyYW1ldGVycygpIH0sIDApOwogICAgIGF1dG8gc2Vzc2lvbklEID0gc3RvcmUuc2Vzc2lv
bklEKCk7Ci0gICAgaWYgKCFzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkgewotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQorICAgIGlmICghc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpCiAgICAg
ICAgIGNyZWF0ZVN5bUxpbmtGb3JGaWxlVXBncmFkZShzdG9yZS5yZXNvbHZlZEluZGV4ZWREYXRh
YmFzZURpcmVjdG9yeSgpKTsKLSNlbmRpZgotICAgIH0KIH0KIAogdm9pZCBOZXR3b3JrUHJvY2Vz
c1Byb3h5OjpyZW1vdmVTZXNzaW9uKFdlYnNpdGVEYXRhU3RvcmUmIHdlYnNpdGVEYXRhU3RvcmUp
CkBAIC0xNTQxLDcgKzE1MzgsNiBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OnRlc3RQcm9j
ZXNzSW5jCiAgICAgcmVwbHkoaGFuZGxlZCk7CiB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6Y3JlYXRlU3ltTGlua0ZvckZpbGVVcGdy
YWRlKGNvbnN0IFN0cmluZyYgaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5KQogewogICAgIGlmIChp
bmRleGVkRGF0YWJhc2VEaXJlY3RvcnkuaXNFbXB0eSgpKQpAQCAtMTU1Miw3ICsxNTQ4LDYgQEAg
dm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpjcmVhdGVTeW1MaW5rRgogICAgIGlmICghRmlsZVN5
c3RlbTo6ZmlsZUV4aXN0cyhvbGRWZXJzaW9uRGlyZWN0b3J5KSkKICAgICAgICAgRmlsZVN5c3Rl
bTo6Y3JlYXRlU3ltYm9saWNMaW5rKGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeSwgb2xkVmVyc2lv
bkRpcmVjdG9yeSk7CiB9Ci0jZW5kaWYKIAogdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpnZXRM
b2NhbFN0b3JhZ2VEZXRhaWxzKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgQ29tcGxldGlvbkhh
bmRsZXI8dm9pZChWZWN0b3I8TG9jYWxTdG9yYWdlRGF0YWJhc2VUcmFja2VyOjpPcmlnaW5EZXRh
aWxzPiYmKT4mJiBjb21wbGV0aW9uSGFuZGxlcikKIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oCShyZXZpc2lv
biAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9j
ZXNzUHJveHkuaAkod29ya2luZyBjb3B5KQpAQCAtMjI1LDkgKzIyNSw3IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGFkZFNlc3Npb24oV2Vic2l0ZURhdGFTdG9yZSYsIFNlbmRQYXJhbWV0ZXJzVG9OZXR3
b3JrUHJvY2Vzcyk7CiAgICAgdm9pZCByZW1vdmVTZXNzaW9uKFdlYnNpdGVEYXRhU3RvcmUmKTsK
ICAgICAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICB2b2lkIGNyZWF0ZVN5bUxp
bmtGb3JGaWxlVXBncmFkZShjb25zdCBTdHJpbmcmIGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeSk7
Ci0jZW5kaWYKIAogICAgIC8vIFByb2Nlc3NUaHJvdHRsZXJDbGllbnQKICAgICB2b2lkIHNlbmRQ
cm9jZXNzRGlkUmVzdW1lKCkgZmluYWw7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcAkocmV2aXNpb24g
Mjc1MTA1KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURh
dGFTdG9yZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5OTMsMTEgKzE5OTMsOSBAQCBXZWJzaXRl
RGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0CiAKICAgICBwYXJhbWV0ZXJzLm5ldHdv
cmtTZXNzaW9uUGFyYW1ldGVycyA9IFdURk1vdmUobmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzKTsK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHBhcmFtZXRlcnMuaW5kZXhlZERh
dGFiYXNlRGlyZWN0b3J5ID0gcmVzb2x2ZWRJbmRleGVkRGF0YWJhc2VEaXJlY3RvcnkoKTsKICAg
ICBpZiAoIXBhcmFtZXRlcnMuaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5LmlzRW1wdHkoKSkKICAg
ICAgICAgU2FuZGJveEV4dGVuc2lvbjo6Y3JlYXRlSGFuZGxlRm9yUmVhZFdyaXRlRGlyZWN0b3J5
KHBhcmFtZXRlcnMuaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5LCBwYXJhbWV0ZXJzLmluZGV4ZWRE
YXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShT
RVJWSUNFX1dPUktFUikKICAgICBwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25E
aXJlY3RvcnkgPSByZXNvbHZlZFNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkoKTsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMTExNiw3ICsxMTE2LDYgQEAgdm9pZCBXZWJQcm9jZXNzOjpuZXR3b3JrUHJv
Y2Vzc0Nvbm5lY3RpbwogICAgIGZvciAoYXV0byogc3RvcmFnZUFyZWFNYXAgOiBjb3B5VG9WZWN0
b3IobV9zdG9yYWdlQXJlYU1hcHMudmFsdWVzKCkpKQogICAgICAgICBzdG9yYWdlQXJlYU1hcC0+
ZGlzY29ubmVjdCgpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgZm9yIChh
dXRvJiBwYWdlIDogbV9wYWdlTWFwLnZhbHVlcygpKSB7CiAgICAgICAgIGF1dG8gaWRiQ29ubmVj
dGlvbiA9IHBhZ2UtPmNvcmVQYWdlKCktPm9wdGlvbmFsSURCQ29ubmVjdGlvbigpOwogICAgICAg
ICBpZiAoIWlkYkNvbm5lY3Rpb24pCkBAIC0xMTI3LDcgKzExMjYsNiBAQCB2b2lkIFdlYlByb2Nl
c3M6Om5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvCiAgICAgICAgICAgICBwYWdlLT5jb3JlUGFnZSgp
LT5jbGVhcklEQkNvbm5lY3Rpb24oKTsKICAgICAgICAgfQogICAgIH0KLSNlbmRpZgogCiAjaWYg
RU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIGlmIChTV0NvbnRleHRNYW5hZ2VyOjpzaW5nbGV0
b24oKS5jb25uZWN0aW9uKCkpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJh
c2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5jcHAJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQ
cm92aWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDExICs2Niw5IEBAIFdlYkRhdGFiYXNl
UHJvdmlkZXI6On5XZWJEYXRhYmFzZVByb3ZpZGUKICAgICBkYXRhYmFzZVByb3ZpZGVycygpLnJl
bW92ZShtX2lkZW50aWZpZXIpOwogfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiBX
ZWJDb3JlOjpJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Ub1NlcnZlciYgV2ViRGF0YWJhc2VQcm92
aWRlcjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQQUw6OlNlc3Npb25J
RCYpCiB7CiAgICAgcmV0dXJuIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLmVuc3VyZU5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvbigpLmlkYkNvbm5lY3Rpb25Ub1NlcnZlcigpLmNvcmVDb25uZWN0aW9u
VG9TZXJ2ZXIoKTsKIH0KLSNlbmRpZgogCiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuaAkocmV2aXNp
b24gMjc1MTA1KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRh
YmFzZVByb3ZpZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTM2LDkgKzM2LDcgQEAgcHVibGljOgog
ICAgIHN0YXRpYyBSZWY8V2ViRGF0YWJhc2VQcm92aWRlcj4gZ2V0T3JDcmVhdGUodWludDY0X3Qg
aWRlbnRpZmllcik7CiAgICAgdmlydHVhbCB+V2ViRGF0YWJhc2VQcm92aWRlcigpOwogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgV2ViQ29yZTo6SURCQ2xpZW50OjpJREJDb25u
ZWN0aW9uVG9TZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24oY29uc3QgUEFM
OjpTZXNzaW9uSUQmKSBmaW5hbDsKLSNlbmRpZgogCiBwcml2YXRlOgogICAgIGV4cGxpY2l0IFdl
YkRhdGFiYXNlUHJvdmlkZXIodWludDY0X3QgaWRlbnRpZmllcik7CkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9TZXJ2
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMv
SW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHAJKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNv
bm5lY3Rpb25Ub1NlcnZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNp
bmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRGF0YVJlZmVyZW5j
ZS5oIgogI2luY2x1ZGUgIk5ldHdvcmtDb25uZWN0aW9uVG9XZWJQcm9jZXNzTWVzc2FnZXMuaCIK
ICNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uaCIKQEAgLTMzMyw1ICszMzEsMyBA
QCB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlcjo6Y29ubmVjdGlvCiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4
OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJDb25u
ZWN0aW9uVG9TZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
RGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAkocmV2aXNpb24g
Mjc1MTA1KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIv
V2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIk1lc3NhZ2VTZW5kZXIuaCIKICNpbmNsdWRlICJTYW5kYm94RXh0ZW5zaW9uLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaD4KQEAgLTExMSw1ICsxMDks
MyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9E
YXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5tZXNzYWdlcy5pbgo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWRE
Qi9XZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIubWVzc2FnZXMuaW4JKHJldmlzaW9uIDI3NTEwNSkK
KysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNv
bm5lY3Rpb25Ub1NlcnZlci5tZXNzYWdlcy5pbgkod29ya2luZyBjb3B5KQpAQCAtMjAsOCArMjAs
NiBAQAogIyBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQogIyBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KIG1lc3NhZ2VzIC0+IFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZl
ciB7CiAgICAgRGlkRGVsZXRlRGF0YWJhc2UoV2ViQ29yZTo6SURCUmVzdWx0RGF0YSByZXN1bHQp
CiAgICAgRGlkT3BlbkRhdGFiYXNlKFdlYkNvcmU6OklEQlJlc3VsdERhdGEgcmVzdWx0KQpAQCAt
NDksNSArNDcsMyBAQCBtZXNzYWdlcyAtPiBXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIgewogCiAg
ICAgRGlkR2V0QWxsRGF0YWJhc2VOYW1lc0FuZFZlcnNpb25zKFdlYkNvcmU6OklEQlJlc291cmNl
SWRlbnRpZmllciByZXF1ZXN0SWRlbnRpZmllciwgVmVjdG9yPFdlYkNvcmU6OklEQkRhdGFiYXNl
TmFtZUFuZFZlcnNpb24+IGRhdGFiYXNlcykKIH0KLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlBy
b2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCShyZXZpc2lvbiAyNzUx
MDUpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc0Nv
bm5lY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNDMsMTMgKzE0MywxMSBAQCB2b2lkIE5l
dHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkUmVjZWl2CiAgICAgfQogI2VuZGlmCiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJO
YW1lKCkgPT0gTWVzc2FnZXM6OldlYklEQkNvbm5lY3Rpb25Ub1NlcnZlcjo6bWVzc2FnZVJlY2Vp
dmVyTmFtZSgpKSB7CiAgICAgICAgIGlmIChtX3dlYklEQkNvbm5lY3Rpb24pCiAgICAgICAgICAg
ICBtX3dlYklEQkNvbm5lY3Rpb24tPmRpZFJlY2VpdmVNZXNzYWdlKGNvbm5lY3Rpb24sIGRlY29k
ZXIpOwogICAgICAgICByZXR1cm47CiAgICAgfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklD
RV9XT1JLRVIpCiAgICAgaWYgKGRlY29kZXIubWVzc2FnZVJlY2VpdmVyTmFtZSgpID09IE1lc3Nh
Z2VzOjpXZWJTV0NsaWVudENvbm5lY3Rpb246Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSkgewpAQCAt
MjA0LDEwICsyMDIsOCBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkQ2xvc2Uo
CiAgICAgUmVmPE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbj4gcHJvdGVjdG9yKCp0aGlzKTsKICAg
ICBXZWJQcm9jZXNzOjpzaW5nbGV0b24oKS5uZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb25DbG9zZWQo
dGhpcyk7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBpZiAoYXV0byBpZGJD
b25uZWN0aW9uID0gc3RkOjpleGNoYW5nZShtX3dlYklEQkNvbm5lY3Rpb24sIG51bGxwdHIpKQog
ICAgICAgICBpZGJDb25uZWN0aW9uLT5jb25uZWN0aW9uVG9TZXJ2ZXJMb3N0KCk7Ci0jZW5kaWYK
IAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBpZiAoYXV0byBzd0Nvbm5lY3Rpb24g
PSBzdGQ6OmV4Y2hhbmdlKG1fc3dDb25uZWN0aW9uLCBudWxscHRyKSkKQEAgLTI4MywxNCArMjc5
LDEyIEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRDYWNoZVIKIH0KICNlbmRp
ZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiBXZWJJREJDb25uZWN0aW9uVG9TZXJ2
ZXImIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6aWRiQ29ubmVjdGlvblRvU2VydmVyKCkKIHsK
ICAgICBpZiAoIW1fd2ViSURCQ29ubmVjdGlvbikKICAgICAgICAgbV93ZWJJREJDb25uZWN0aW9u
ID0gV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjpjcmVhdGUoKTsKICAgICByZXR1cm4gKm1fd2Vi
SURCQ29ubmVjdGlvbjsKIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQog
V2ViU1dDbGllbnRDb25uZWN0aW9uJiBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OnNlcnZpY2VX
b3JrZXJDb25uZWN0aW9uKCkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3Jr
L05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
V2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oCShyZXZpc2lvbiAy
NzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vz
c0Nvbm5lY3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAtNjYsMTAgKzY2LDggQEAgcHVibGljOgog
CiAgICAgdm9pZCB3cml0ZUJsb2JzVG9UZW1wb3JhcnlGaWxlcyhjb25zdCBWZWN0b3I8U3RyaW5n
PiYgYmxvYlVSTHMsIENvbXBsZXRpb25IYW5kbGVyPHZvaWQoVmVjdG9yPFN0cmluZz4mJiBmaWxl
UGF0aHMpPiYmKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFdlYklEQkNv
bm5lY3Rpb25Ub1NlcnZlciogZXhpc3RpbmdJREJDb25uZWN0aW9uVG9TZXJ2ZXIoKSBjb25zdCB7
IHJldHVybiBtX3dlYklEQkNvbm5lY3Rpb24uZ2V0KCk7IH07CiAgICAgV2ViSURCQ29ubmVjdGlv
blRvU2VydmVyJiBpZGJDb25uZWN0aW9uVG9TZXJ2ZXIoKTsKLSNlbmRpZgogCiAjaWYgRU5BQkxF
KFNFUlZJQ0VfV09SS0VSKQogICAgIFdlYlNXQ2xpZW50Q29ubmVjdGlvbiYgc2VydmljZVdvcmtl
ckNvbm5lY3Rpb24oKTsKQEAgLTEyMiw5ICsxMjAsNyBAQCBwcml2YXRlOgogICAgIE9wdGlvbmFs
PGF1ZGl0X3Rva2VuX3Q+IG1fbmV0d29ya1Byb2Nlc3NBdWRpdFRva2VuOwogI2VuZGlmCiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBSZWZQdHI8V2ViSURCQ29ubmVjdGlvblRv
U2VydmVyPiBtX3dlYklEQkNvbm5lY3Rpb247Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNF
X1dPUktFUikKICAgICBSZWZQdHI8V2ViU1dDbGllbnRDb25uZWN0aW9uPiBtX3N3Q29ubmVjdGlv
bjsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1h
bmFnZXJDb25uZWN0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1dlYlByb2Nl
c3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbi5jcHAJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1h
bmFnZXJDb25uZWN0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTM5LDkgKzEzOSw3IEBAIHZv
aWQgV2ViU1dDb250ZXh0TWFuYWdlckNvbm5lY3Rpb246Omluc3QKIHsKICAgICBhdXRvIHBhZ2VD
b25maWd1cmF0aW9uID0gcGFnZUNvbmZpZ3VyYXRpb25XaXRoRW1wdHlDbGllbnRzKFdlYlByb2Nl
c3M6OnNpbmdsZXRvbigpLnNlc3Npb25JRCgpKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIHBhZ2VDb25maWd1cmF0aW9uLmRhdGFiYXNlUHJvdmlkZXIgPSBXZWJEYXRhYmFz
ZVByb3ZpZGVyOjpnZXRPckNyZWF0ZShtX3BhZ2VHcm91cElEKTsKLSNlbmRpZgogICAgIHBhZ2VD
b25maWd1cmF0aW9uLnNvY2tldFByb3ZpZGVyID0gV2ViU29ja2V0UHJvdmlkZXI6OmNyZWF0ZSgp
OwogICAgIHBhZ2VDb25maWd1cmF0aW9uLnVzZXJDb250ZW50UHJvdmlkZXIgPSBtX3VzZXJDb250
ZW50Q29udHJvbGxlcjsKICNpZiBFTkFCTEUoV0VCX1JUQykKSW5kZXg6IFNvdXJjZS9XZWJLaXRM
ZWdhY3kvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdl
TG9nCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L0NoYW5nZUxvZwko
d29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8
d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJB
U0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0
IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAmIEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgorCisgICAgICAgICogU3RvcmFn
ZS9JblByb2Nlc3NJREJTZXJ2ZXIuY3BwOgorICAgICAgICAoSW5Qcm9jZXNzSURCU2VydmVyOjpk
aXNwYXRjaFRhc2tSZXBseSk6CisgICAgICAgICogU3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIu
aDoKKyAgICAgICAgKiBTdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuY3BwOgorICAgICAgICAo
V2ViRGF0YWJhc2VQcm92aWRlcjo6ZGVsZXRlQWxsRGF0YWJhc2VzKToKKyAgICAgICAgKiBTdG9y
YWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuaDoKKwogMjAyMS0wMy0xOSAgUGVyIEFybmUgIDxwdm9s
bGFuQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2luXSBGaXggYnVpbGQgaXNzdWUKSW5kZXg6IFNv
dXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIuY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvSW5Qcm9j
ZXNzSURCU2VydmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjaW5j
bHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIlN0b3JhZ2VUaHJlYWQuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0NsaWVu
dE9yaWdpbi5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSURCQ29ubmVjdGlvblRvQ2xpZW50Lmg+CkBA
IC01MTAsNSArNTA4LDMgQEAgdm9pZCBJblByb2Nlc3NJREJTZXJ2ZXI6OmRpc3BhdGNoVGFza1Jl
cAogICAgIEFTU0VSVCghaXNNYWluVGhyZWFkKCkpOwogICAgIGNhbGxPbk1haW5UaHJlYWQoV1RG
TW92ZShmdW5jdGlvbikpOwogfQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvSW5Qcm9jZXNzSURCU2VydmVyLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL0luUHJvY2Vzc0lEQlNl
cnZlci5oCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2Uv
SW5Qcm9jZXNzSURCU2VydmVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAog
I3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PFdlYkNvcmUvSURCQ29ubmVjdGlvblRvQ2xpZW50Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9JREJD
b25uZWN0aW9uVG9TZXJ2ZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0lEQlNlcnZlci5oPgpAQCAt
MTM1LDUgKzEzMywzIEBAIHByaXZhdGU6CiAKICAgICBIYXNoTWFwPFdlYkNvcmU6OkNsaWVudE9y
aWdpbiwgUmVmUHRyPFdlYkNvcmU6OlN0b3JhZ2VRdW90YU1hbmFnZXI+PiBtX3F1b3RhTWFuYWdl
cnM7CiB9OwotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuY3Bw
CShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0
YWJhc2VQcm92aWRlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQyLDcgKzQyLDYgQEAgV2ViRGF0
YWJhc2VQcm92aWRlcjo6fldlYkRhdGFiYXNlUHJvdmlkZQogewogfQogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCiBXZWJDb3JlOjpJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Ub1NlcnZl
ciYgV2ViRGF0YWJhc2VQcm92aWRlcjo6aWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihj
b25zdCBQQUw6OlNlc3Npb25JRCYgc2Vzc2lvbklEKQogewogICAgIHJldHVybiBtX2lkYlNlcnZl
ck1hcC5lbnN1cmUoc2Vzc2lvbklELCBbJnNlc3Npb25JRF0gewpAQCAtNTUsNSArNTQsMyBAQCB2
b2lkIFdlYkRhdGFiYXNlUHJvdmlkZXI6OmRlbGV0ZUFsbERhdGFiCiAgICAgZm9yIChhdXRvJiBz
ZXJ2ZXIgOiBtX2lkYlNlcnZlck1hcC52YWx1ZXMoKSkKICAgICAgICAgc2VydmVyLT5jbG9zZUFu
ZERlbGV0ZURhdGFiYXNlc01vZGlmaWVkU2luY2UoLVdhbGxUaW1lOjppbmZpbml0eSgpKTsKIH0K
LQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQ
cm92aWRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9XZWJE
YXRhYmFzZVByb3ZpZGVyLmgJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvU3RvcmFnZS9XZWJEYXRhYmFzZVByb3ZpZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDMz
ICsyNSwyNiBAQAogCiAjcHJhZ21hIG9uY2UKIAorI2luY2x1ZGUgIkluUHJvY2Vzc0lEQlNlcnZl
ci5oIgogI2luY2x1ZGUgPFdlYkNvcmUvRGF0YWJhc2VQcm92aWRlci5oPgogI2luY2x1ZGUgPHd0
Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNpbmNsdWRlIDx3dGYvUmVm
UHRyLmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSNpbmNsdWRlICJJblByb2Nl
c3NJREJTZXJ2ZXIuaCIKLSNlbmRpZgotCiBjbGFzcyBXZWJEYXRhYmFzZVByb3ZpZGVyIGZpbmFs
IDogcHVibGljIFdlYkNvcmU6OkRhdGFiYXNlUHJvdmlkZXIgewogICAgIGZyaWVuZCBjbGFzcyBO
ZXZlckRlc3Ryb3llZDxXZWJEYXRhYmFzZVByb3ZpZGVyPjsKIHB1YmxpYzoKICAgICBzdGF0aWMg
V2ViRGF0YWJhc2VQcm92aWRlciYgc2luZ2xldG9uKCk7CiAgICAgdmlydHVhbCB+V2ViRGF0YWJh
c2VQcm92aWRlcigpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgV2ViQ29y
ZTo6SURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZl
ckZvclNlc3Npb24oY29uc3QgUEFMOjpTZXNzaW9uSUQmKSBvdmVycmlkZTsKIAogICAgIHZvaWQg
ZGVsZXRlQWxsRGF0YWJhc2VzKCk7Ci0jZW5kaWYKIAogcHJpdmF0ZToKICAgICBleHBsaWNpdCBX
ZWJEYXRhYmFzZVByb3ZpZGVyKCk7CiAKICAgICBzdGF0aWMgU3RyaW5nIGluZGV4ZWREYXRhYmFz
ZURpcmVjdG9yeVBhdGgoKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIEhh
c2hNYXA8UEFMOjpTZXNzaW9uSUQsIFJlZlB0cjxJblByb2Nlc3NJREJTZXJ2ZXI+PiBtX2lkYlNl
cnZlck1hcDsKLSNlbmRpZgogfTsKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2Vp
bmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0Ug
JiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlz
IG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAmIEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgorCisgICAgICAgICogU3RvcmFnZS9X
ZWJEYXRhYmFzZU1hbmFnZXIubW06CisgICAgICAgICgtW1dlYkRhdGFiYXNlTWFuYWdlciBkZWxl
dGVBbGxJbmRleGVkRGF0YWJhc2VzXSk6CisKIDIwMjEtMDMtMjYgIEplc3NpZSBCZXJsaW4gIDxq
YmVybGluQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVXBkYXRlIHRoZSBCRUZPUkUvU0lOQ0UsIFNZ
U1RFTV9WRVJTSU9OX1BSRUZJWCwgYW5kIE1BQ09TWF9ERVBMT1lNRU5UX1RBUkdFVCBmbGFncwpJ
bmRleDogU291cmNlL1dlYktpdExlZ2FjeS9tYWMvU3RvcmFnZS9XZWJEYXRhYmFzZU1hbmFnZXIu
bW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS9tYWMvU3RvcmFnZS9XZWJEYXRh
YmFzZU1hbmFnZXIubW0JKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1N0b3JhZ2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw2
ICsyOSw3IEBACiAjaW1wb3J0ICJXZWJEYXRhYmFzZU1hbmFnZXJQcml2YXRlLmgiCiAKICNpbXBv
cnQgIldlYkRhdGFiYXNlTWFuYWdlckNsaWVudC5oIgorI2ltcG9ydCAiV2ViRGF0YWJhc2VQcm92
aWRlci5oIgogI2ltcG9ydCAiV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgiCiAjaW1wb3J0ICJXZWJT
ZWN1cml0eU9yaWdpbkludGVybmFsLmgiCiAjaW1wb3J0IDxXZWJDb3JlL0RhdGFiYXNlTWFuYWdl
ci5oPgpAQCAtMzYsMTAgKzM3LDYgQEAKICNpbXBvcnQgPFdlYkNvcmUvU2VjdXJpdHlPcmlnaW4u
aD4KICNpbXBvcnQgPHd0Zi9jb2NvYS9WZWN0b3JDb2NvYS5oPgogCi0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0jaW1wb3J0ICJXZWJEYXRhYmFzZVByb3ZpZGVyLmgiCi0jZW5kaWYKLQog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW1wb3J0ICJXZWJEYXRhYmFzZU1hbmFnZXJJbnRl
cm5hbC5oIgogI2ltcG9ydCA8V2ViQ29yZS9EYXRhYmFzZVRyYWNrZXIuaD4KQEAgLTE0Myw5ICsx
NDAsNyBAQCAtIChCT09MKWRlbGV0ZURhdGFiYXNlOihOU1N0cmluZyAqKWRhdGFiCiAvLyBGb3Ig
RHVtcFJlbmRlclRyZWUgc3VwcG9ydCBvbmx5CiAtICh2b2lkKWRlbGV0ZUFsbEluZGV4ZWREYXRh
YmFzZXMKIHsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBXZWJEYXRhYmFzZVBy
b3ZpZGVyOjpzaW5nbGV0b24oKS5kZWxldGVBbGxEYXRhYmFzZXMoKTsKLSNlbmRpZgogfQogCiAj
aWYgUExBVEZPUk0oSU9TX0ZBTUlMWSkKSW5kZXg6IFNvdXJjZS9jbWFrZS9PcHRpb25zRlRXLmNt
YWtlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9jbWFrZS9PcHRpb25zRlRXLmNtYWtlCShyZXZpc2lv
biAyNzUxMDUpCisrKyBTb3VyY2UvY21ha2UvT3B0aW9uc0ZUVy5jbWFrZQkod29ya2luZyBjb3B5
KQpAQCAtODEsNyArODEsNiBAQCBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFC
TEVfCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRlRQRElSIFBSSVZB
VEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRlVMTFNDUkVF
Tl9BUEkgUFJJVkFURSBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFC
TEVfR0VPTE9DQVRJT04gUFJJVkFURSBPTikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RF
RkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5URVJTRUNUSU9OX09CU0VSVkVSIFBSSVZBVEUgT04p
CiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTUFDX0dFU1RVUkVfRVZF
TlRTIFBSSVZBVEUgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxF
X01BVEhNTCBQUklWQVRFIE9OKQpJbmRleDogU291cmNlL2NtYWtlL09wdGlvbnNNYWMuY21ha2UK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL2NtYWtlL09wdGlvbnNNYWMuY21ha2UJKHJldmlzaW9uIDI3
NTEwNSkKKysrIFNvdXJjZS9jbWFrZS9PcHRpb25zTWFjLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBA
IC00Niw4ICs0Niw2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV8K
IFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9QSUNUVVJFX0lOX1BJQ1RV
UkVfQVBJIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFC
TEVfR0FNRVBBRCBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX0dFT0xPQ0FUSU9OIFBSSVZBVEUgT04pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSBQUklWQVRFIE9OKQotV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUyBQ
UklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVU
X1RZUEVfQ09MT1IgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9JTlNQRUNUT1JfQUxURVJOQVRFX0RJU1BBVENIRVJTIFBSSVZBVEUgT04pCiBXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5TUEVDVE9SX0VYVEVOU0lPTlMg
UFJJVkFURSBPTikKSW5kZXg6IFNvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9jbWFrZS9PcHRpb25zV2luLmNtYWtlCShyZXZpc2lvbiAyNzUxMDUpCisr
KyBTb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZQkod29ya2luZyBjb3B5KQpAQCAtMzMsOCAr
MzMsNiBAQCBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfCiBXRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfRlVMTFNDUkVFTl9BUEkgUFVCTElDIE9O
KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0dBTUVQQUQgUFVCTElD
IE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HRU9MT0NBVElP
TiBQVUJMSUMgT04pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSBQVUJMSUMgT04pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxV
RShFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIFBVQkxJQyBPTikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SIFBVQkxJQyBP
RkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9E
QVRFIFBVQkxJQyBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVf
SU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMIFBVQkxJQyBPRkYpCkluZGV4OiBTb3VyY2UvY21ha2Uv
V2ViS2l0RmVhdHVyZXMuY21ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2NtYWtlL1dlYktpdEZl
YXR1cmVzLmNtYWtlCShyZXZpc2lvbiAyNzUxMDUpCisrKyBTb3VyY2UvY21ha2UvV2ViS2l0RmVh
dHVyZXMuY21ha2UJKHdvcmtpbmcgY29weSkKQEAgLTE3MSw4ICsxNzEsNiBAQCBtYWNybyhXRUJL
SVRfT1BUSU9OX0JFR0lOKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9HQU1FUEFE
ICJUb2dnbGUgR2FtZXBhZCBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfR0VPTE9DQVRJT04gIlRvZ2dsZSBHZW9sb2NhdGlvbiBzdXBwb3J0IiBQ
UklWQVRFIE9OKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9HUFVfUFJPQ0VTUyAi
VG9nZ2xlIEdQVSBQcm9jZXNzIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQotICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFICJUb2dnbGUgSW5kZXhlZCBEYXRhYmFz
ZSBzdXBwb3J0IiBQUklWQVRFIE9OKQotICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9J
TkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgIlRvZ2dsZSBzdXBwb3J0IGZvciBJbmRleGVkIERh
dGFiYXNlIGluIHdvcmtlcnMiIFBSSVZBVEUgT04pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUo
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgIlRvZ2dsZSBJbnB1dCBUeXBlIENvbG9yIHN1cHBvcnQi
IFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9JTlBVVF9UWVBF
X0RBVEUgIlRvZ2dsZSBJbnB1dCBUeXBlIERhdGUgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAg
V0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCAiVG9n
Z2xlIElucHV0IFR5cGUgRGF0ZXRpbWVsb2NhbCBzdXBwb3J0IiBQUklWQVRFIE9GRikKQEAgLTI3
NCw3ICsyNzIsNiBAQCBtYWNybyhXRUJLSVRfT1BUSU9OX0JFR0lOKQogICAgIFdFQktJVF9PUFRJ
T05fREVQRU5EKEVOQUJMRV9GVExfSklUIEVOQUJMRV9ERkdfSklUKQogICAgIFdFQktJVF9PUFRJ
T05fREVQRU5EKEVOQUJMRV9XRUJBU1NFTUJMWSBFTkFCTEVfSklUKQogICAgIFdFQktJVF9PUFRJ
T05fREVQRU5EKEVOQUJMRV9XRUJBU1NFTUJMWV9CM0pJVCBFTkFCTEVfRlRMX0pJVCkKLSAgICBX
RUJLSVRfT1BUSU9OX0RFUEVORChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFKQogICAgIFdFQktJVF9PUFRJT05fREVQRU5EKEVOQUJMRV9J
TlNQRUNUT1JfQUxURVJOQVRFX0RJU1BBVENIRVJTIEVOQUJMRV9SRU1PVEVfSU5TUEVDVE9SKQog
ICAgIFdFQktJVF9PUFRJT05fREVQRU5EKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQgRU5B
QkxFX1ZJREVPKQogICAgIFdFQktJVF9PUFRJT05fREVQRU5EKEVOQUJMRV9NRURJQV9TT1VSQ0Ug
RU5BQkxFX1ZJREVPKQpJbmRleDogU291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURl
ZmluZXMucHJvcHMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJvcHMvRmVh
dHVyZURlZmluZXMucHJvcHMJKHJldmlzaW9uIDI3NTEwNSkKKysrIFNvdXJjZS9jbWFrZS90b29s
cy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnByb3BzCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw3ICsy
OCw2IEBACiAgICAgPEVOQUJMRV9HQU1FUEFEIC8+CiAgICAgPEVOQUJMRV9HRU9MT0NBVElPTj5F
TkFCTEVfR0VPTE9DQVRJT048L0VOQUJMRV9HRU9MT0NBVElPTj4KICAgICA8RU5BQkxFX0hJR0hf
RFBJX0NBTlZBUz5FTkFCTEVfSElHSF9EUElfQ0FOVkFTPC9FTkFCTEVfSElHSF9EUElfQ0FOVkFT
PgotICAgIDxFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAvPgogICAgIDxFTkFCTEVfSU5QVVRfU1BF
RUNIIC8+CiAgICAgPEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SIC8+CiAgICAgPEVOQUJMRV9JTlBV
VF9UWVBFX0RBVEUgLz4KQEAgLTY2LDcgKzY1LDcgQEAKICAgPC9Qcm9wZXJ0eUdyb3VwPgogICA8
SXRlbURlZmluaXRpb25Hcm91cD4KICAgICA8Q2xDb21waWxlPgotICAgICAgPFByZXByb2Nlc3Nv
ckRlZmluaXRpb25zPiQoRU5BQkxFXzNEX1RSQU5TRk9STVMpOyQoRU5BQkxFX09WRVJGTE9XX1ND
Uk9MTElOR19UT1VDSCk7JChFTkFCTEVfQVRUQUNITUVOVF9FTEVNRU5UKTskKEVOQUJMRV9DSEFO
TkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ1NTM19DT05ESVRJT05BTF9SVUxFUyk7JChFTkFCTEVf
Q1NTX0lNQUdFX1NFVCk7JChFTkFCTEVfQ1NTM19URVhUKTskKEVOQUJMRV9DU1NfQk9YX0RFQ09S
QVRJT05fQlJFQUspOyQoRU5BQkxFX0NTU19TSEFERVJTKTskKEVOQUJMRV9DU1NfQ09NUE9TSVRJ
TkcpOyQoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVWRUw0KTskKEVOQUJMRV9DU1NfU0hBUEVfSU5T
SURFKTskKEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05TX1RSQU5TSVRJT05TX1VOUFJF
RklYRUQpOyQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKTskKEVOQUJMRV9DVVNUT01fU0NIRU1F
X0hBTkRMRVIpOyQoRU5BQkxFX0RBUktfTU9ERV9DU1MpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVO
QUJMRV9EQVRBTElTVF9FTEVNRU5UKTskKEVOQUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pOyQoRU5B
QkxFX0RJUkVDVE9SWV9VUExPQUQpOyQoRU5BQkxFX0VOQ1JZUFRFRF9NRURJQSk7JChFTkFCTEVf
RkVUQ0hfQVBJKTskKEVOQUJMRV9GSUxFX1NZU1RFTSk7JChFTkFCTEVfRlVMTFNDUkVFTl9BUEkp
OyQoRU5BQkxFX0dBTUVQQUQpOyQoRU5BQkxFX0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9ISUdIX0RQ
SV9DQU5WQVMpOyQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpOyQoRU5BQkxFX0lOUFVUX1RZUEVf
Q09MT1IpOyQoRU5BQkxFX0lOUFVUX1NQRUVDSCk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKTsk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVfTU9O
VEgpOyQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKTsk
KEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9MSU5LX1BSRVJFTkRFUik7
JChFTkFCTEVfTUFUSE1MKTskKEVOQUJMRV9NSUNST0RBVEEpOyQoRU5BQkxFX01PVVNFX0NVUlNP
Ul9TQ0FMRSk7JChFTkFCTEVfTk9USUZJQ0FUSU9OUyk7JChFTkFCTEVfU0NSSVBURURfU1BFRUNI
KTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBU
KTskKEVOQUJMRV9NRURJQV9TT1VSQ0UpOyQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpOyQoRU5B
QkxFX1NRTF9EQVRBQkFTRSk7JChFTkFCTEVfU1RZTEVfU0NPUEVEKTskKEVOQUJMRV9TVUJQSVhF
TF9MQVlPVVQpOyQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVfVklERU8p
OyQoRU5BQkxFX1dFQl9BVURJTyk7JChFTkFCTEVfV0VCR0wpOyQoRU5BQkxFX1dFQkdQVSk7JChF
TkFCTEVfV0VCWFIpOyQoRU5BQkxFX1hIUl9USU1FT1VUKTskKEVOQUJMRV9YU0xUKTslKFByZXBy
b2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+CisgICAgICA8UHJl
cHJvY2Vzc29yRGVmaW5pdGlvbnM+JChFTkFCTEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfT1ZF
UkZMT1dfU0NST0xMSU5HX1RPVUNIKTskKEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpOyQoRU5B
QkxFX0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKTsk
KEVOQUJMRV9DU1NfSU1BR0VfU0VUKTskKEVOQUJMRV9DU1MzX1RFWFQpOyQoRU5BQkxFX0NTU19C
T1hfREVDT1JBVElPTl9CUkVBSyk7JChFTkFCTEVfQ1NTX1NIQURFUlMpOyQoRU5BQkxFX0NTU19D
T01QT1NJVElORyk7JChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpOyQoRU5BQkxFX0NTU19T
SEFQRV9JTlNJREUpOyQoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVFJBTlNJVElP
TlNfVU5QUkVGSVhFRCk7JChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpOyQoRU5BQkxFX0NVU1RP
TV9TQ0hFTUVfSEFORExFUik7JChFTkFCTEVfREFSS19NT0RFX0NTUyk7JChFTkFCTEVfREFUQUdS
SUQpOyQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElP
Tik7JChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCk7JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTsk
KEVOQUJMRV9GRVRDSF9BUEkpOyQoRU5BQkxFX0ZJTEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NS
RUVOX0FQSSk7JChFTkFCTEVfR0FNRVBBRCk7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxF
X0hJR0hfRFBJX0NBTlZBUyk7JChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUik7JChFTkFCTEVfSU5Q
VVRfU1BFRUNIKTskKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpOyQoRU5BQkxFX0lOUFVUX1RZUEVf
REFURVRJTUVMT0NBTCk7JChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCk7JChFTkFCTEVfSU5QVVRf
VFlQRV9USU1FKTskKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspOyQoRU5BQkxFX0xFR0FDWV9FTkNS
WVBURURfTUVESUEpOyQoRU5BQkxFX0xJTktfUFJFUkVOREVSKTskKEVOQUJMRV9NQVRITUwpOyQo
RU5BQkxFX01JQ1JPREFUQSk7JChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKTskKEVOQUJMRV9O
T1RJRklDQVRJT05TKTskKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpOyQoRU5BQkxFX1NIQVJFRF9X
T1JLRVJTKTskKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpOyQoRU5BQkxFX01FRElBX1NP
VVJDRSk7JChFTkFCTEVfTUVESUFfU1RBVElTVElDUyk7JChFTkFCTEVfU1FMX0RBVEFCQVNFKTsk
KEVOQUJMRV9TVFlMRV9TQ09QRUQpOyQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCk7JChFTkFCTEVf
U1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX0FVRElP
KTskKEVOQUJMRV9XRUJHTCk7JChFTkFCTEVfV0VCR1BVKTskKEVOQUJMRV9XRUJYUik7JChFTkFC
TEVfWEhSX1RJTUVPVVQpOyQoRU5BQkxFX1hTTFQpOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMp
PC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4KICAgICA8L0NsQ29tcGlsZT4KICAgPC9JdGVtRGVm
aW5pdGlvbkdyb3VwPgogICA8SXRlbUdyb3VwPgpAQCAtMTc4LDEwICsxNzcsNiBAQAogICAgICAg
PFZhbHVlPiQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUyk8L1ZhbHVlPgogICAgICAgPEVudmlyb25t
ZW50VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KICAgICA8L0J1aWxkTWFjcm8+
Ci0gICAgPEJ1aWxkTWFjcm8gSW5jbHVkZT0iRU5BQkxFX0lOREVYRURfREFUQUJBU0UiPgotICAg
ICAgPFZhbHVlPiQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpPC9WYWx1ZT4KLSAgICAgIDxFbnZp
cm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFibGU+Ci0gICAgPC9CdWlsZE1h
Y3JvPgogICAgIDxCdWlsZE1hY3JvIEluY2x1ZGU9IkVOQUJMRV9JTlBVVF9TUEVFQ0giPgogICAg
ICAgPFZhbHVlPiQoRU5BQkxFX0lOUFVUX1NQRUVDSCk8L1ZhbHVlPgogICAgICAgPEVudmlyb25t
ZW50VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KSW5kZXg6IFNvdXJjZS9jbWFr
ZS90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8ucHJvcHMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmluZXNDYWlyby5wcm9wcwkocmV2
aXNpb24gMjc1MTA1KQorKysgU291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJvcHMvRmVhdHVyZURlZmlu
ZXNDYWlyby5wcm9wcwkod29ya2luZyBjb3B5KQpAQCAtMjgsNyArMjgsNiBAQAogICAgIDxFTkFC
TEVfR0FNRVBBRCAvPgogICAgIDxFTkFCTEVfR0VPTE9DQVRJT04+RU5BQkxFX0dFT0xPQ0FUSU9O
PC9FTkFCTEVfR0VPTE9DQVRJT04+CiAgICAgPEVOQUJMRV9ISUdIX0RQSV9DQU5WQVM+RU5BQkxF
X0hJR0hfRFBJX0NBTlZBUzwvRU5BQkxFX0hJR0hfRFBJX0NBTlZBUz4KLSAgICA8RU5BQkxFX0lO
REVYRURfREFUQUJBU0UgLz4KICAgICA8RU5BQkxFX0lOUFVUX1NQRUVDSCAvPgogICAgIDxFTkFC
TEVfSU5QVVRfVFlQRV9DT0xPUiAvPgogICAgIDxFTkFCTEVfSU5QVVRfVFlQRV9EQVRFIC8+CkBA
IC02Niw3ICs2NSw3IEBACiAgIDwvUHJvcGVydHlHcm91cD4KICAgPEl0ZW1EZWZpbml0aW9uR3Jv
dXA+CiAgICAgPENsQ29tcGlsZT4KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4kKEVO
QUJMRV8zRF9UUkFOU0ZPUk1TKTskKEVOQUJMRV9PVkVSRkxPV19TQ1JPTExJTkdfVE9VQ0gpOyQo
RU5BQkxFX0FUVEFDSE1FTlRfRUxFTUVOVCk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQo
RU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpOyQoRU5BQkxFX0NTU19JTUFHRV9TRVQpOyQo
RU5BQkxFX0NTUzNfVEVYVCk7JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKTskKEVO
QUJMRV9DU1NfU0hBREVSUyk7JChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKTskKEVOQUJMRV9DU1Nf
U0VMRUNUT1JTX0xFVkVMNCk7JChFTkFCTEVfQ1NTX1NIQVBFX0lOU0lERSk7JChFTkFCTEVfQ1NT
X1RSQU5TRk9STVNfQU5JTUFUSU9OU19UUkFOU0lUSU9OU19VTlBSRUZJWEVEKTskKEVOQUJMRV9D
VVJTT1JfVklTSUJJTElUWSk7JChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKTskKEVOQUJM
RV9EQVJLX01PREVfQ1NTKTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJU1RfRUxF
TUVOVCk7JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKTskKEVOQUJMRV9ESVJFQ1RPUllfVVBM
T0FEKTskKEVOQUJMRV9FTkNSWVBURURfTUVESUEpOyQoRU5BQkxFX0ZFVENIX0FQSSk7JChFTkFC
TEVfRklMRV9TWVNURU0pOyQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKTskKEVOQUJMRV9HQU1FUEFE
KTskKEVOQUJMRV9HRU9MT0NBVElPTik7JChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKTskKEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFKTskKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKTskKEVOQUJMRV9J
TlBVVF9TUEVFQ0gpOyQoRU5BQkxFX0lOUFVUX1RZUEVfREFURSk7JChFTkFCTEVfSU5QVVRfVFlQ
RV9EQVRFVElNRUxPQ0FMKTskKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKTskKEVOQUJMRV9JTlBV
VF9UWVBFX1RJTUUpOyQoRU5BQkxFX0lOUFVUX1RZUEVfV0VFSyk7JChFTkFCTEVfTEVHQUNZX0VO
Q1JZUFRFRF9NRURJQSk7JChFTkFCTEVfTElOS19QUkVSRU5ERVIpOyQoRU5BQkxFX01BVEhNTCk7
JChFTkFCTEVfTUlDUk9EQVRBKTskKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpOyQoRU5BQkxF
X05PVElGSUNBVElPTlMpOyQoRU5BQkxFX1NDUklQVEVEX1NQRUVDSCk7JChFTkFCTEVfU0hBUkVE
X1dPUktFUlMpOyQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCk7JChFTkFCTEVfTUVESUFf
U09VUkNFKTskKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKTskKEVOQUJMRV9TUUxfREFUQUJBU0Up
OyQoRU5BQkxFX1NUWUxFX1NDT1BFRCk7JChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKTskKEVOQUJM
RV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfQVVE
SU8pOyQoRU5BQkxFX1dFQkdMKTskKEVOQUJMRV9XRUJYUik7JChFTkFCTEVfWEhSX1RJTUVPVVQp
OyQoRU5BQkxFX1hTTFQpOyUoUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JE
ZWZpbml0aW9ucz4KKyAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4kKEVOQUJMRV8zRF9U
UkFOU0ZPUk1TKTskKEVOQUJMRV9PVkVSRkxPV19TQ1JPTExJTkdfVE9VQ0gpOyQoRU5BQkxFX0FU
VEFDSE1FTlRfRUxFTUVOVCk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NT
UzNfQ09ORElUSU9OQUxfUlVMRVMpOyQoRU5BQkxFX0NTU19JTUFHRV9TRVQpOyQoRU5BQkxFX0NT
UzNfVEVYVCk7JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKTskKEVOQUJMRV9DU1Nf
U0hBREVSUyk7JChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKTskKEVOQUJMRV9DU1NfU0VMRUNUT1JT
X0xFVkVMNCk7JChFTkFCTEVfQ1NTX1NIQVBFX0lOU0lERSk7JChFTkFCTEVfQ1NTX1RSQU5TRk9S
TVNfQU5JTUFUSU9OU19UUkFOU0lUSU9OU19VTlBSRUZJWEVEKTskKEVOQUJMRV9DVVJTT1JfVklT
SUJJTElUWSk7JChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKTskKEVOQUJMRV9EQVJLX01P
REVfQ1NTKTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCk7JChF
TkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKTskKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKTskKEVO
QUJMRV9FTkNSWVBURURfTUVESUEpOyQoRU5BQkxFX0ZFVENIX0FQSSk7JChFTkFCTEVfRklMRV9T
WVNURU0pOyQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKTskKEVOQUJMRV9HQU1FUEFEKTskKEVOQUJM
RV9HRU9MT0NBVElPTik7JChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKTskKEVOQUJMRV9JTlBVVF9U
WVBFX0NPTE9SKTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQoRU5BQkxFX0lOUFVUX1RZUEVfREFU
RSk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKTskKEVOQUJMRV9JTlBVVF9UWVBF
X01PTlRIKTskKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpOyQoRU5BQkxFX0lOUFVUX1RZUEVfV0VF
Syk7JChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSk7JChFTkFCTEVfTElOS19QUkVSRU5E
RVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTUlDUk9EQVRBKTskKEVOQUJMRV9NT1VTRV9D
VVJTT1JfU0NBTEUpOyQoRU5BQkxFX05PVElGSUNBVElPTlMpOyQoRU5BQkxFX1NDUklQVEVEX1NQ
RUVDSCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxFX01FRElBX0NPTlRST0xTX1ND
UklQVCk7JChFTkFCTEVfTUVESUFfU09VUkNFKTskKEVOQUJMRV9NRURJQV9TVEFUSVNUSUNTKTsk
KEVOQUJMRV9TUUxfREFUQUJBU0UpOyQoRU5BQkxFX1NUWUxFX1NDT1BFRCk7JChFTkFCTEVfU1VC
UElYRUxfTEFZT1VUKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpOyQoRU5BQkxFX1ZJ
REVPKTskKEVOQUJMRV9XRUJfQVVESU8pOyQoRU5BQkxFX1dFQkdMKTskKEVOQUJMRV9XRUJYUik7
JChFTkFCTEVfWEhSX1RJTUVPVVQpOyQoRU5BQkxFX1hTTFQpOyUoUHJlcHJvY2Vzc29yRGVmaW5p
dGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4KICAgICA8L0NsQ29tcGlsZT4KICAgPC9J
dGVtRGVmaW5pdGlvbkdyb3VwPgogICA8SXRlbUdyb3VwPgpAQCAtMTgyLDEwICsxODEsNiBAQAog
ICAgICAgPFZhbHVlPiQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUyk8L1ZhbHVlPgogICAgICAgPEVu
dmlyb25tZW50VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KICAgICA8L0J1aWxk
TWFjcm8+Ci0gICAgPEJ1aWxkTWFjcm8gSW5jbHVkZT0iRU5BQkxFX0lOREVYRURfREFUQUJBU0Ui
PgotICAgICAgPFZhbHVlPiQoRU5BQkxFX0lOREVYRURfREFUQUJBU0UpPC9WYWx1ZT4KLSAgICAg
IDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFibGU+Ci0gICAgPC9C
dWlsZE1hY3JvPgogICAgIDxCdWlsZE1hY3JvIEluY2x1ZGU9IkVOQUJMRV9JTlBVVF9TUEVFQ0gi
PgogICAgICAgPFZhbHVlPiQoRU5BQkxFX0lOUFVUX1NQRUVDSCk8L1ZhbHVlPgogICAgICAgPEVu
dmlyb25tZW50VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KSW5kZXg6IFRvb2xz
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI3NTEy
MykKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisy
MDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1v
dmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9X
T1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU2NyaXB0cy93ZWJraXRwZXJs
L0ZlYXR1cmVMaXN0LnBtOgorICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0Ug
JiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGZyb20gRmVhdHVyZUxpc3QucG0u
CisKIDIwMjEtMDMtMjYgIFR5bGVyIFdpbGNvY2sgIDx0d2lsY28ub0Bwcm90b25tYWlsLmNvbT4K
IAogICAgICAgICBGaXggVHlwZUVycm9yOiBDYW4ndCBtaXggc3RyaW5ncyBhbmQgYnl0ZXMgaW4g
cGF0aCBjb21wb25lbnRzIGluIFRvb2xzL1NjcmlwdHMvZHVtcC1jbGFzcy1sYXlvdXQKSW5kZXg6
IFRvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3QucG0JKHJldmlzaW9uIDI3NTEwNSkK
KysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbQkod29ya2luZyBjb3B5
KQpAQCAtOTUsOCArOTUsNiBAQCBteSAoCiAgICAgJGdlb2xvY2F0aW9uU3VwcG9ydCwKICAgICAk
Z3B1UHJvY2Vzc1N1cHBvcnQsCiAgICAgJGdzdHJlYW1lckdMU3VwcG9ydCwKLSAgICAkaW5kZXhl
ZERhdGFiYXNlSW5Xb3JrZXJzU3VwcG9ydCwKLSAgICAkaW5kZXhlZERhdGFiYXNlU3VwcG9ydCwK
ICAgICAkaW5wdXRUeXBlQ29sb3JTdXBwb3J0LAogICAgICRpbnB1dFR5cGVEYXRlU3VwcG9ydCwK
ICAgICAkaW5wdXRUeXBlRGF0ZXRpbWVsb2NhbFN1cHBvcnQsCkBAIC0zMjcsMTIgKzMyNSw2IEBA
IG15IEBmZWF0dXJlcyA9ICgKICAgICB7IG9wdGlvbiA9PiAiZ3B1LXByb2Nlc3MiLCBkZXNjID0+
ICJUb2dnbGUgR1BVIFByb2Nlc3Mgc3VwcG9ydCIsCiAgICAgICBkZWZpbmUgPT4gIkVOQUJMRV9H
UFVfUFJPQ0VTUyIsIHZhbHVlID0+IFwkZ3B1UHJvY2Vzc1N1cHBvcnQgfSwKIAotICAgIHsgb3B0
aW9uID0+ICJpbmRleGVkLWRhdGFiYXNlIiwgZGVzYyA9PiAiVG9nZ2xlIEluZGV4ZWQgRGF0YWJh
c2Ugc3VwcG9ydCIsCi0gICAgICBkZWZpbmUgPT4gIkVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFIiwg
dmFsdWUgPT4gXCRpbmRleGVkRGF0YWJhc2VTdXBwb3J0IH0sCi0KLSAgICB7IG9wdGlvbiA9PiAi
aW5kZXhlZC1kYXRhYmFzZS1pbi13b3JrZXJzIiwgZGVzYyA9PiAiVG9nZ2xlIHN1cHBvcnQgZm9y
IEluZGV4ZWQgRGF0YWJhc2UgaW4gd29ya2VycyIsCi0gICAgICBkZWZpbmUgPT4gIkVOQUJMRV9J
TkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMiLCB2YWx1ZSA9PiBcJGluZGV4ZWREYXRhYmFzZUlu
V29ya2Vyc1N1cHBvcnQgfSwKLQogICAgIHsgb3B0aW9uID0+ICJpbnB1dC10eXBlLWNvbG9yIiwg
ZGVzYyA9PiAiVG9nZ2xlIElucHV0IFR5cGUgQ29sb3Igc3VwcG9ydCIsCiAgICAgICBkZWZpbmUg
PT4gIkVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SIiwgdmFsdWUgPT4gXCRpbnB1dFR5cGVDb2xvclN1
cHBvcnQgfSwKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424423</attachid>
            <date>2021-03-26 17:20:31 -0700</date>
            <delta_ts>2021-03-26 20:42:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223810-20210326172030.patch</filename>
            <type>text/plain</type>
            <size>186651</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9J
Tl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL3Byb3Rv
Y29sL0luZGV4ZWREQi5qc29uOgorICAgICAgICBVcGRhdGUgZm9yIHJlbW92ZSBFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSBjb25kaXRpb25hbC4KKwogMjAyMS0wMy0yNiAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIFVzZSBBcHBsZUlDVSBTUEkgZm9y
IGNhbm9uaWNhbGl6YXRpb24KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvSW5kZXhlZERCLmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbmRleGVkREIuanNvbgkocmV2aXNpb24gMjc1MTIzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbmRleGVkREIuanNv
bgkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDUgQEAKIHsKICAgICAiZG9tYWluIjogIkluZGV4
ZWREQiIsCi0gICAgImNvbmRpdGlvbiI6ICJkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
KSAmJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSIsCiAgICAgImRlYnVnZ2FibGVUeXBlcyI6IFsi
cGFnZSIsICJ3ZWItcGFnZSJdLAogICAgICJ0YXJnZXRUeXBlcyI6IFsicGFnZSJdLAogICAgICJ0
eXBlcyI6IFsKSW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAzLTI2ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtl
IGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxlLmg6CisgICAgICAgICogd3RmL1Bs
YXRmb3JtRW5hYmxlQ29jb2EuaDoKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFIGFuZCBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLgorCiAyMDIxLTAzLTI2
ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBQ
VUlDUXVpY2tib2FyZENvbnRyb2xsZXIgZm9yIHRleHQgaW5wdXQgd2hlbiBIQVZFKFFVSUNLQk9B
UkRfQ09OVFJPTExFUikgaXMgZGVmaW5lZApJbmRleDogU291cmNlL1dURi93dGYvUGxhdGZvcm1F
bmFibGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCShy
ZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNzksMTQgKzI3OSw2IEBACiAjZGVmaW5lIEVOQUJMRV9HRU9MT0NBVElP
TiAwCiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKQotI2Rl
ZmluZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAwCi0jZW5kaWYKLQotI2lmICFkZWZpbmVkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCi0jZGVmaW5lIEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMgMAotI2VuZGlmCi0KICNpZiAhZGVmaW5lZChFTkFCTEVfSU5Q
VVRfVFlQRV9DT0xPUikKICNkZWZpbmUgRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgMQogI2VuZGlm
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI0MCwxNCArMjQwLDYgQEAKICNkZWZpbmUgRU5BQkxFX1VJX1BST0NFU1NfUERGX0hVRCAx
CiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKQotI2RlZmlu
ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAxCi0jZW5kaWYKLQotI2lmICFkZWZpbmVkKEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCi0jZGVmaW5lIEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFX0lOX1dPUktFUlMgMQotI2VuZGlmCi0KICNpZiAhZGVmaW5lZChFTkFCTEVfSU5QVVRf
VFlQRV9EQVRFKQogI2RlZmluZSBFTkFCTEVfSU5QVVRfVFlQRV9EQVRFIDEKICNlbmRpZgpJbmRl
eDogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEzIEBACisyMDIxLTAzLTI2ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtl
IGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAmIEVOQUJMRV9J
TkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgorCisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5pZGw6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9ET01XaW5kb3dJbmRleGVkRGF0YWJhc2UuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9JREJBY3RpdmVET01PYmplY3QuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQkN1cnNvci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yRGlyZWN0aW9uLmlkbDoKKyAg
ICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuY3BwOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5pZGw6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCRGF0YWJhc2UuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQkRhdGFiYXNlLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2Uu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5j
cHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VJZGVudGlmaWVyLmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJl
cXVlc3QuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFu
ZFZlcnNpb25SZXF1ZXN0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9y
eS5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkdldEFsbFJlc3VsdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvSURCR2V0QWxsUmVzdWx0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0
UmVzdWx0LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRSZXN1bHQuaDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvSURCSW5kZXguaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJJbmRleC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5LmNwcDoKKyAg
ICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXkuaDoKKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJLZXlEYXRhLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlEYXRhLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHA6Cisg
ICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5oOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXlSYW5nZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZURhdGEuY3BwOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlRGF0YS5oOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQk9iamVjdFN0b3JlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVu
REJSZXF1ZXN0LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1
ZXN0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVzdC5pZGw6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCUmVjb3JkSWRlbnRpZmllci5oOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJSZXF1ZXN0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0Q29t
cGxldGlvbkV2ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0
Q29tcGxldGlvbkV2ZW50Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNh
Y3Rpb24uY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5pZGw6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCVmFsdWUuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lE
QlZhbHVlLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2
ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZl
bnQuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0luZGV4ZWREQi5oOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL1dvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlLmNwcDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRh
YmFzZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9u
UHJveHkuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0
aW9uUHJveHkuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVj
dGlvblRvU2VydmVyLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURC
Q29ubmVjdGlvblRvU2VydmVyLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50
L0lEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvY2xpZW50L1RyYW5zYWN0aW9uT3BlcmF0aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQmFja2luZ1N0b3JlLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnREZWxlZ2F0
ZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9u
LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlv
bi5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9u
Q29udGV4dC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlh
bGl6YXRpb25Db250ZXh0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lE
QlNlcnZlci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZl
ci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlRW50cnku
Y3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlRW50cnku
aDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmNw
cDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRy
YW5zYWN0aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5
QmFja2luZ1N0b3JlVHJhbnNhY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5Q3Vyc29yLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvTWVtb3J5Q3Vyc29yLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUlEQkJhY2tpbmdTdG9yZS5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9NZW1vcnlJbmRleC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUluZGV4Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUluZGV4Q3Vyc29yLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5SW5kZXhDdXJzb3IuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5T2JqZWN0U3RvcmUuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlPYmplY3RTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlPYmplY3RTdG9yZUN1cnNvci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmg6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5oOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuY3BwOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24uY3BwOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5oOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU2VydmVyT3BlbkRCUmVxdWVzdC5o
OgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5j
cHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNl
Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNl
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1
ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCQ3Vyc29ySW5mby5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JSZWNvcmQuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmNwcDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb24uaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRXJyb3IuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJvci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkdldEFsbFJlY29yZHNEYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJHZXRSZWNvcmREYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkluZGV4SW5mby5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkluZGV4SW5mby5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJJdGVyYXRlQ3Vyc29yRGF0YS5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXF1ZXN0RGF0YS5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc291cmNlSWRlbnRpZmllci5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc291cmNlSWRlbnRpZmllci5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXN1bHREYXRhLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3BwOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JbmRleEtleS5oOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRp
bGl0aWVzLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmg6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db252ZXJ0SW5kZXhlZERCLmg6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SlNET01HbG9iYWxPYmplY3Q6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6c2NyaXB0TW9kdWxlTG9hZGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0lEQkN1cnNvckN1c3RvbS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNJREJDdXJzb3JX
aXRoVmFsdWVDdXN0b20uY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCSW5kZXhDdXN0
b20uY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCT2JqZWN0U3RvcmVDdXN0b20uY3Bw
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCUmVxdWVzdEN1c3RvbS5jcHA6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0lEQlRyYW5zYWN0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwOgorICAgICAgICAqIGJpbmRpbmdz
L2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNv
cmVKU0NsaWVudERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNWTUNsaWVudERhdGE6OkpT
Vk1DbGllbnREYXRhKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRh
Lmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50OjppZGJDb25uZWN0aW9uUHJveHkpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnNl
dEJhY2tGb3J3YXJkQ2FjaGVTdGF0ZSk6CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAg
ICAgICogZG9tL0VtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oOgorICAgICAgICAqIGRvbS9F
dmVudE5hbWVzLmluOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldEZhY3RvcnkuaW46CisgICAg
ICAgICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250
cm9sbGVyOjpjcmVhdGVMYXp5QWdlbnRzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvckluZGV4ZWREQkFnZW50LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvckluZGV4ZWREQkFnZW50Lmg6CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5j
cHA6CisgICAgICAgICogcGFnZS9EYXRhYmFzZVByb3ZpZGVyLmg6CisgICAgICAgICogcGFnZS9Q
YWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNldFNlc3Npb25JRCk6CisgICAgICAg
IChXZWJDb3JlOjpQYWdlOjpjbGVhcklEQkNvbm5lY3Rpb24pOgorICAgICAgICAqIHBhZ2UvUGFn
ZS5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMgY29uc3QpOgorICAgICAgICAqIHRl
c3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorICAg
ICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyR2xvYmFsU2NvcGU6Oldvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKFdlYkNvcmU6
Oldvcmtlckdsb2JhbFNjb3BlOjpwcmVwYXJlRm9yRGVzdHJ1Y3Rpb24pOgorICAgICAgICAoV2Vi
Q29yZTo6V29ya2VyR2xvYmFsU2NvcGU6OmlkYkNvbm5lY3Rpb25Qcm94eSk6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6c3RvcEluZGV4ZWREYXRhYmFzZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJHbG9iYWxTY29wZTo6cmVzdW1lKToKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckds
b2JhbFNjb3BlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3JrZXJHbG9i
YWxTY29wZSk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyVGhyZWFkOjpXb3JrZXJUaHJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyVGhyZWFkOjppZGJDb25uZWN0aW9uUHJveHkpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyVGhyZWFkLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdv
cmtlclRocmVhZFByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlkYkNvbm5lY3Rpb25Qcm94
eSk6CisgICAgICAgICogd29ya2xldHMvV29ya2xldEdsb2JhbFNjb3BlLmg6CisKIDIwMjEtMDMt
MjYgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDog
Y3Jhc2ggYXQgYW9tLmFwcGxlLldlYkNvcmU6IFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlQcm9ncmVz
c0luZGljYXRvcjo6ZWxlbWVudCBjb25zdApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5pZGwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5p
ZGwJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0RPTVdpbmRvdytJbmRleGVkRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsy
Nyw2IEBACiAvLyBodHRwczovL3czYy5naXRodWIuaW8vSW5kZXhlZERCLyNmYWN0b3J5LWludGVy
ZmFjZQogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1lcmdlZCB3aXRoIFdvcmtlckdsb2JhbFNj
b3BlK0luZGV4ZWREYXRhYmFzZS5pZGwgaW50byBhIG5ldyBXaW5kb3dPcldvcmtlckdsb2JhbFNj
b3BlK0luZGV4ZWREYXRhYmFzZS5pZGwgdG8gbWF0Y2ggdGhlIHNwZWMuCiBbCi0gICAgQ29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBJbXBsZW1lbnRlZEJ5PURPTVdpbmRvd0luZGV4
ZWREYXRhYmFzZQogXSBwYXJ0aWFsIGludGVyZmFjZSBET01XaW5kb3cgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBJREJGYWN0b3J5IGluZGV4ZWREQjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFi
YXNlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYs
OCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkRPTVdpbmRvd0luZGV4
ZWREYXRhYmFzZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRhYmFzZVByb3ZpZGVyLmgiCiAjaW5jbHVkZSAi
RG9jdW1lbnQuaCIKQEAgLTkzLDUgKzkxLDMgQEAgSURCRmFjdG9yeSogRE9NV2luZG93SW5kZXhl
ZERhdGFiYXNlOjppbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9ET01XaW5k
b3dJbmRleGVkRGF0YWJhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
RE9NV2luZG93UHJvcGVydHkuaCIKICNpbmNsdWRlICJTdXBwbGVtZW50YWJsZS5oIgogCkBAIC01
Myw1ICs1MSwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkFjdGl2ZURPTU9iamVjdC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFjdGl2ZURPTU9iamVjdC5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJBY3RpdmVE
T01PYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMjksOCArMjksNiBAQAogI2luY2x1ZGUgIlNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFz
cyBJREJBY3RpdmVET01PYmplY3QgOiBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKQEAgLTkyLDUg
KzkwLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCQ3Vy
c29yLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJp
bmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZS5oIgogI2luY2x1ZGUgIklE
QkdldFJlc3VsdC5oIgpAQCAtMzg4LDUgKzM4NiwzIEBAIHZvaWQgSURCQ3Vyc29yOjpjbGVhclBy
ZWZldGNoZWRSZWNvcmRzKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJDdXJzb3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29yRGlyZWN0
aW9uLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgpAQCAtMTMzLDUgKzEzMSwzIEBAIGlu
bGluZSBJREJDdXJzb3JEaXJlY3Rpb24gSURCQ3Vyc29yOjpkaXIKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNv
ci5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29u
ZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBDdXN0b21Ub0pTT2JqZWN0LAogICAgIEpT
Q3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLApJbmRleDogU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yRGlyZWN0aW9uLmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JEaXJl
Y3Rpb24uaWRsCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJDdXJzb3JEaXJlY3Rpb24uaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsy
NCw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiBdIGVu
dW0gSURCQ3Vyc29yRGlyZWN0aW9uIHsKICAgICAibmV4dCIsCiAgICAgIm5leHR1bmlxdWUiLApJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVl
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJD
dXJzb3JXaXRoVmFsdWUuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29y
V2l0aFZhbHVlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0hlYXBJbmxpbmVzLmg+CiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lu
bGluZXMuaD4KIApAQCAtNTgsNSArNTYsMyBAQCBJREJDdXJzb3JXaXRoVmFsdWU6OklEQkN1cnNv
cldpdGhWYWx1ZShJCiBJREJDdXJzb3JXaXRoVmFsdWU6On5JREJDdXJzb3JXaXRoVmFsdWUoKSA9
IGRlZmF1bHQ7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCQ3Vyc29yV2l0aFZhbHVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNpbmNsdWRlIDx3
dGYvVHlwZUNhc3RzLmg+CiAKQEAgLTUyLDUgKzUwLDMgQEAgcHJpdmF0ZToKIFNQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6SURCQ3Vyc29yV2l0aFZhbHVlKQogICAgIHN0YXRp
YyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpJREJDdXJzb3ImIGN1cnNvcikgeyByZXR1cm4g
Y3Vyc29yLmlzS2V5Q3Vyc29yV2l0aFZhbHVlKCk7IH0KIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNf
RU5EKCkKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFs
dWUuaWRsCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw2
IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgU2tp
cFZUYWJsZVZhbGlkYXRpb24sCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAgRXhwb3Nl
ZD0oV2luZG93LFdvcmtlcikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkRhdGFiYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJEYXRhYmFzZS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNl
LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkRPTVN0cmlu
Z0xpc3QuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRXZlbnRRdWV1ZS5o
IgpAQCAtNTAxLDUgKzQ5OSwzIEBAIHZvaWQgSURCRGF0YWJhc2U6OmRpZERlbGV0ZUluZGV4SW5m
byhjb24KIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJEYXRhYmFzZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkRhdGFiYXNlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAjaW5jbHVkZSAiSURCQWN0aXZlRE9NT2JqZWN0Lmgi
CiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCkBAIC0xMzgsNSArMTM2LDMgQEAgcHJp
dmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2UuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkRhdGFiYXNlLmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0y
NSw3ICsyNSw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0Us
CiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLAogICAgIEV4
cG9zZWQ9KFdpbmRvdyxXb3JrZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJEYXRhYmFzZUlkZW50aWZpZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5jcHAJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNl
SWRlbnRpZmllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUlkZW50aWZpZXIuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNp
bmNsdWRlIDx3dGYvRmlsZVN5c3RlbS5oPgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KQEAgLTgwLDUg
Kzc4LDMgQEAgU3RyaW5nIElEQkRhdGFiYXNlSWRlbnRpZmllcjo6bG9nZ2luZ1N0cgogI2VuZGlm
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJh
c2VJZGVudGlmaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCRGF0YWJhc2VJZGVudGlmaWVyLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJDbGllbnRPcmlnaW4uaCIKICNpbmNsdWRl
ICJTZWN1cml0eU9yaWdpbkRhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+
CkBAIC0xNTIsNSArMTUwLDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0czxXZWJDb3Jl
OjpJRAogdGVtcGxhdGU8PiBzdHJ1Y3QgRGVmYXVsdEhhc2g8V2ViQ29yZTo6SURCRGF0YWJhc2VJ
ZGVudGlmaWVyPiA6IFdlYkNvcmU6OklEQkRhdGFiYXNlSWRlbnRpZmllckhhc2ggeyB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VOYW1lQW5k
VmVyc2lvblJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VO
YW1lQW5kVmVyc2lvblJlcXVlc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBA
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lv
blJlcXVlc3QuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
SURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5o
IgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CkBAIC03OCw1ICs3NiwzIEBAIHZv
aWQgSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3Q6OnMKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9u
UmVxdWVzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmgJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNp
b25SZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBv
bmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkFjdGl2
ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb24uaCIKICNp
bmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTg0LDUgKzgyLDMgQEAgaW5saW5l
IElEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0OgogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIklEQkZhY3RvcnkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJJREJCaW5kaW5nVXRpbGl0aWVz
LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCkBAIC0xNzMsNSArMTcxLDMgQEAg
dm9pZCBJREJGYWN0b3J5OjpnZXRBbGxEYXRhYmFzZU5hbWVzKFNjcgogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIK
ICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlv
bi5oPgpAQCAtODAsNSArNzgsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5p
ZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbiwKICAgICBF
eHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgSURCRmFjdG9yeSB7CkBAIC0zNyw3
ICszNiw2IEBACiB9OwogCiBbCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAg
ICBKU0dlbmVyYXRlVG9KU09iamVjdCwKIF0gZGljdGlvbmFyeSBJREJEYXRhYmFzZUluZm8gewog
ICAgIERPTVN0cmluZyBuYW1lOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCR2V0QWxsUmVzdWx0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSURCR2V0QWxsUmVzdWx0LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgPHd0Zi9Dcm9zc1RocmVhZENvcGllci5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0
Lmg+CiAKQEAgLTg1LDUgKzgzLDMgQEAgVmVjdG9yPFN0cmluZz4gSURCR2V0QWxsUmVzdWx0Ojph
bGxCbG9iRgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkdldEFsbFJlc3VsdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkdldEFsbFJlc3VsdC5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgogI2luY2x1ZGUgIklEQktleVBh
dGguaCIKICNpbmNsdWRlICJJREJWYWx1ZS5oIgpAQCAtMTAwLDUgKzk4LDMgQEAgYm9vbCBJREJH
ZXRBbGxSZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkdldFJlc3VsdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVz
dWx0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIklEQkdldFJlc3VsdC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBJREJHZXRSZXN1bHQ6OmRhdGFG
cm9tQnVmZmVyKFNoYXJlZEJ1ZmZlciYgYnVmZmVyKQpAQCAtNjQsNSArNjIsMyBAQCB2b2lkIElE
QkdldFJlc3VsdDo6c2V0VmFsdWUoSURCVmFsdWUmJiB2CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmgJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkdldFJlc3Vs
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3JSZWNvcmQu
aCIKICNpbmNsdWRlICJJREJLZXkuaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCkBAIC0xNTks
NSArMTU3LDMgQEAgYm9vbCBJREJHZXRSZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZWNvZAogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRl
eC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkluZGV4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkluZGV4LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRl
ICJJREJDdXJzb3IuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZS5oIgpAQCAtNDI5LDUgKzQyNywz
IEBAIHZvaWQgSURCSW5kZXg6OmRlcmVmKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmgJKHdvcmtpbmcgY29weSkK
QEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1cnNvci5oIgogI2luY2x1ZGUgIklEQkluZGV4SW5m
by5oIgogI2luY2x1ZGUgIklEQlJlcXVlc3QuaCIKQEAgLTExMCw1ICsxMDgsMyBAQCBwcml2YXRl
OgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJ
bmRleC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCSW5kZXguaWRsCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJJbmRleC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI5LDcgKzI5LDYgQEAg
dHlwZWRlZiAoRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZwogCiBbCiAgICAgQWN0aXZl
RE9NT2JqZWN0LAotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgR2VuZXJh
dGVJc1JlYWNoYWJsZT1JbXBsLAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIFNraXBW
VGFibGVWYWxpZGF0aW9uLApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCS2V5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJLZXkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCS2V5LmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleURhdGEuaCIKICNpbmNsdWRlIDxKYXZh
U2NyaXB0Q29yZS9BcnJheUJ1ZmZlclZpZXcuaD4KICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9K
U0FycmF5QnVmZmVyLmg+CkBAIC0xNjAsNSArMTU4LDMgQEAgU3RyaW5nIElEQktleTo6bG9nZ2lu
Z1N0cmluZygpIGNvbnN0CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleS5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXku
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSW5kZXhlZERCLmgiCiAjaW5j
bHVkZSAiVGhyZWFkU2FmZURhdGFCdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpA
QCAtMjE1LDUgKzIxMywzIEBAIGlubGluZSBpbnQgY29tcGFyZUJpbmFyeUtleURhdGEoY29uc3Qg
VGgKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlEYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXlEYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCS2V5RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2
LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIktleWVkQ29kaW5nLmgiCiAj
aW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0
cmluZ0NvbmNhdGVuYXRlTnVtYmVycy5oPgpAQCAtNTA0LDUgKzUwMiwzIEBAIHNpemVfdCBJREJL
ZXlEYXRhOjpzaXplKCkgY29uc3QKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJLZXlEYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCS2V5RGF0YS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlEYXRhLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleS5oIgogI2luY2x1ZGUgPHd0Zi9TdGRTZXQuaD4K
ICNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgpAQCAtMzA4LDUgKzMwNiwzIEBAIE9wdGlvbmFsPElE
QktleURhdGE+IElEQktleURhdGE6OmRlY29kZSgKIHVzaW5nIElEQktleURhdGFTZXQgPSBTdGRT
ZXQ8SURCS2V5RGF0YT47CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCS2V5UGF0aC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVBhdGguY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw2IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogCiAjaW5jbHVkZSA8
d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTI0OSw1ICsyNDcsMyBAQCBTdHJpbmcgbG9nZ2luZ1N0cmlu
Zyhjb25zdCBJREJLZXlQYXRoJiBwCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5oCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTI2LDggKzI2LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNTgsNSArNTYs
MyBAQCBTdHJpbmcgbG9nZ2luZ1N0cmluZyhjb25zdCBJREJLZXlQYXRoJik7CiAjZW5kaWYKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5jcHAJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIklEQktleVJhbmdlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJLZXkuaCIKICNpbmNs
dWRlICJJREJLZXlEYXRhLmgiCkBAIC0xNjMsNSArMTYxLDMgQEAgRXhjZXB0aW9uT3I8Ym9vbD4g
SURCS2V5UmFuZ2U6OmluY2x1ZGVzKAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaAkocmV2aXNpb24gMjc1MTIzKQorKysg
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaAkod29ya2luZyBj
b3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJTY3Jp
cHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNzcsNSArNzUs
MyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5p
ZGwJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQktleVJhbmdlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNiBAQAogICovCiAK
IFsKLSAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50ZXJmYWNlIElE
QktleVJhbmdlIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktl
eVJhbmdlRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQktl
eVJhbmdlRGF0YS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJJREJLZXkuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTI3LDUgKzEyNSwzIEBAIFN0
cmluZyBJREJLZXlSYW5nZURhdGE6OmxvZ2dpbmdTdHJpbmcoKSAKICNlbmRpZgogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlRGF0YS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
RGF0YS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJLZXlSYW5nZURhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAog
CiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVk
ZSAiSURCS2V5RGF0YS5oIgogI2luY2x1ZGUgIklEQktleVJhbmdlLmgiCiAKQEAgLTEzMyw1ICsx
MzEsMyBAQCBib29sIElEQktleVJhbmdlRGF0YTo6ZGVjb2RlKERlY29kZXImIGRlCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9i
amVjdFN0b3JlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0U3RvcmUuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NU3RyaW5nTGlz
dC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGll
cy5oIgpAQCAtNzY3LDUgKzc2NSwzIEBAIHZvaWQgSURCT2JqZWN0U3RvcmU6OmRlcmVmKCkKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RT
dG9yZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
Qk9iamVjdFN0b3JlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAj
aW5jbHVkZSAiSURCQ3Vyc29yRGlyZWN0aW9uLmgiCkBAIC0xNDEsNSArMTM5LDMgQEAgcHJpdmF0
ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
T2JqZWN0U3RvcmUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSw3ICsyOSw2IEBAIHR5cGVkZWYgKERPTVN0cmluZyBvciBzZXF1ZW5jZTxET01TdHJp
bmcKIAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKLSAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RB
VEFCQVNFLAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKICAgICBKU0N1c3RvbU1hcmtG
dW5jdGlvbiwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbiwKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVu
REJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQk9wZW5EQlJlcXVlc3QuaCIKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAi
RXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgpAQCAtMjUxLDUg
KzI0OSwzIEBAIHZvaWQgSURCT3BlbkRCUmVxdWVzdDo6c2V0SXNDb250ZXh0U3VzcGUKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1
ZXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
T3BlbkRCUmVxdWVzdC5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDgg
KzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIklEQlJlcXVl
c3QuaCIKIApAQCAtNzcsNSArNzUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0
LmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCT3BlbkRCUmVxdWVzdC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAK
ICAqLwogCiBbCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBKU0dlbmVy
YXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgU2tpcFZU
YWJsZVZhbGlkYXRpb24sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJSZWNvcmRJZGVudGlmaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCUmVjb3JkSWRlbnRpZmllci5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZWNvcmRJZGVudGlmaWVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTMxLDggKzMxLDYgQEAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIElEQlJlY29yZElkZW50aWZpZXIgOiBw
dWJsaWMgUmVmQ291bnRlZDxJREJSZWNvcmRJZGVudGlmaWVyPiB7CkBAIC03Myw1ICs3MSwzIEBA
IHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQlJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlJlcXVlc3Qu
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0
aW9uLmgiCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJFdmVudERpc3BhdGNoZXIuaCIK
QEAgLTU3Miw1ICs1NzAsMyBAQCB2b2lkIElEQlJlcXVlc3Q6OmNsZWFyV3JhcHBlcnMoKQogCiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVl
c3QuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCUmVxdWVzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFn
bWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJFdmVu
dFRhcmdldC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiSURCQWN0aXZl
RE9NT2JqZWN0LmgiCkBAIC0xOTgsNSArMTk2LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwJ
KHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QlJlcXVlc3QuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw3ICsyOSw2IEBACiAKIFsKICAgICBB
Y3RpdmVET01PYmplY3QsCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBH
ZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAg
U2tpcFZUYWJsZVZhbGlkYXRpb24sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmNwcAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
UmVxdWVzdENvbXBsZXRpb25FdmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXF1ZXN0Q29tcGxldGlvbkV2
ZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQxLDUgKzM5LDMg
QEAgSURCUmVxdWVzdENvbXBsZXRpb25FdmVudDo6SURCUmVxdWVzdENvbQogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3RDb21wbGV0aW9u
RXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3RDb21wbGV0aW9uRXZlbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJJREJS
ZXF1ZXN0LmgiCiAKQEAgLTQ3LDUgKzQ1LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9u
LmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCVHJhbnNhY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCVHJhbnNhY3Rpb24uaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0aW9uLmgiCiAjaW5j
bHVkZSAiRE9NU3RyaW5nTGlzdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgpAQCAtMTUxNSw1
ICsxNTEzLDMgQEAgdWludDY0X3QgSURCVHJhbnNhY3Rpb246OmdlbmVyYXRlT3BlcmF0aQogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VHJhbnNhY3Rpb24uaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJJREJBY3RpdmVET01PYmplY3QuaCIK
ICNpbmNsdWRlICJJREJFcnJvci5oIgpAQCAtMjg5LDUgKzI4NywzIEBAIHByaXZhdGU6CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJUcmFuc2FjdGlvbi5pZGwJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjYs
NyArMjYsNiBAQAogCiBbCiAgICAgQWN0aXZlRE9NT2JqZWN0LAotICAgIENvbmRpdGlvbmFsPUlO
REVYRURfREFUQUJBU0UsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAgU2tpcFZUYWJs
ZVZhbGlkYXRpb24sCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5o
CShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJUcmFuc2FjdGlvbk1vZGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSA8
d3RmL0VudW1UcmFpdHMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTEsNSArNDksMyBA
QCB0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OklECiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXVEYKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJUcmFuc2FjdGlvbk1vZGUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5pZGwJKHJldmlzaW9uIDI3NTEy
MykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9k
ZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29u
ZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKIF0gZW51bSBJREJUcmFuc2FjdGlvbk1vZGUgewog
ICAgICJyZWFkb25seSIsCiAgICAgInJlYWR3cml0ZSIsCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJW
YWx1ZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJTZXJp
YWxpemVkU2NyaXB0VmFsdWUuaCIKICNpbmNsdWRlIDx3dGYvQ3Jvc3NUaHJlYWRUYXNrLmg+CiAK
QEAgLTEwMiw1ICsxMDAsMyBAQCBzaXplX3QgSURCVmFsdWU6OnNpemUoKSBjb25zdAogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZhbHVlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuaAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiVGhyZWFkU2FmZURh
dGFCdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtODYsNSAr
ODQsMyBAQCBPcHRpb25hbDxJREJWYWx1ZT4gSURCVmFsdWU6OmRlY29kZShEZWNvCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5n
ZUV2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSURCVmVyc2lvbkNoYW5nZUV2ZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKQEAgLTU4LDUgKzU2LDMgQEAgRXZlbnRJbnRlcmZhY2UgSURCVmVyc2lvbkNoYW5nZUV2
ZW50OjpldgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZl
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNs
dWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvT3B0aW9uYWwuaD4K
QEAgLTc5LDUgKzc3LDMgQEAgcHJpdmF0ZToKIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4o
V2ViQ29yZTo6SURCVmVyc2lvbkNoYW5nZUV2ZW50KQogICAgIHN0YXRpYyBib29sIGlzVHlwZShj
b25zdCBXZWJDb3JlOjpFdmVudCYgZXZlbnQpIHsgcmV0dXJuIGV2ZW50LmlzVmVyc2lvbkNoYW5n
ZUV2ZW50KCk7IH0KIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9u
Q2hhbmdlRXZlbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw2IEBACiAgKi8KIAog
WwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgRXhwb3NlZD0oV2luZG93
LFdvcmtlcikKIF0gaW50ZXJmYWNlIElEQlZlcnNpb25DaGFuZ2VFdmVudCA6IEV2ZW50IHsKICAg
ICBjb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgSURCVmVyc2lvbkNoYW5nZUV2
ZW50SW5pdCBldmVudEluaXREaWN0KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0luZGV4ZWREQi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0luZGV4ZWREQi5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JbmRleGVkREIuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCAr
MjYsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CiAjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAt
MTYxLDUgKzE1OSwzIEBAIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6SW4K
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gRU5BQkxFRChJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvV29ya2VyR2xv
YmFsU2NvcGUrSW5kZXhlZERhdGFiYXNlLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRs
CShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9X
b3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0y
Nyw3ICsyNyw2IEBACiAvLyBodHRwczovL3czYy5naXRodWIuaW8vSW5kZXhlZERCLyNmYWN0b3J5
LWludGVyZmFjZQogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1lcmdlZCB3aXRoIERPTVdpbmRv
dytJbmRleGVkRGF0YWJhc2UuaWRsIGludG8gYSBuZXcgV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZStJbmRleGVkRGF0YWJhc2UuaWRsIHRvIG1hdGNoIHRoZSBzcGVjLgogWwotICAgIENvbmRpdGlv
bmFsPUlOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywKICAgICBJbXBsZW1lbnRlZEJ5PVdvcmtl
ckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlCiBdIHBhcnRpYWwgaW50ZXJmYWNlIFdvcmtlckds
b2JhbFNjb3BlIHsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRlIElEQkZhY3Rv
cnkgaW5kZXhlZERCOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvV29y
a2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL1dvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNl
LmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw5ICsyNiw2IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKLQogI2luY2x1ZGUgIldvcmtlckdsb2JhbFNj
b3BlSW5kZXhlZERhdGFiYXNlLmgiCiAKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIK
QEAgLTgxLDUgKzc4LDMgQEAgSURCRmFjdG9yeSogV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0
YQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRV9JTl9XT1JLRVJTKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWRE
YXRhYmFzZS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFzZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0VfSU5fV09SS0VSUykKLQogI2luY2x1ZGUgIlN1cHBsZW1lbnRhYmxlLmgiCiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTU5LDUgKzU3LDMgQEAgcHJpdmF0ZToK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblByb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblByb3h5LmNwcAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xp
ZW50L0lEQkNvbm5lY3Rpb25Qcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5m
by5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1l
QW5kVmVyc2lvbi5oIgpAQCAtNjQ4LDUgKzY0NiwzIEBAIHZvaWQgSURCQ29ubmVjdGlvblByb3h5
OjpzZXRDb250ZXh0U3VzcGUKIAogfSAvLyBuYW1lc2FwY2UgSURCQ2xpZW50CiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uUHJv
eHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGll
bnQvSURCQ29ubmVjdGlvblByb3h5LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uUHJveHkuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCiAj
aW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3QuaCIKICNpbmNsdWRlICJJ
REJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTE4MSw1ICsxNzksMyBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBJREJDbGllbnQKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25U
b1NlcnZlci5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCQ29u
bmVjdGlvblRvU2VydmVyLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCiAj
aW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvbi5oIgpAQCAtNTIwLDUgKzUxOCwzIEBA
IHZvaWQgSURCQ29ubmVjdGlvblRvU2VydmVyOjpkaWRHZXRBbGxEYXQKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCQ2xpZW50CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVyLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVu
dC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2Vy
dmVyRGVsZWdhdGUuaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTE1
NSw1ICsxNTMsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJDbGllbnQKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rp
b25Ub1NlcnZlckRlbGVnYXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmgJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9J
REJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsy
NSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvV2Vha1B0
ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtOTMsNSArOTEsMyBAQCBw
dWJsaWM6CiAKIH0gLy8gbmFtZXNwYWNlIElEQkNsaWVudAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFu
c2FjdGlvbk9wZXJhdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJUcmFuc2FjdGlvbk9wZXJhdGlvbi5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
Ci0KICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9IZWFw
SW5saW5lcy5oPgogCkBAIC01MCw1ICs0OCwzIEBAIFRyYW5zYWN0aW9uT3BlcmF0aW9uOjpUcmFu
c2FjdGlvbk9wZXJhdGkKIAogfSAvLyBuYW1lc3BhY2UgSURCQ2xpZW50CiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVu
dC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVxdWVzdC5oIgogI2luY2x1ZGUg
IklEQlJlcXVlc3REYXRhLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCkBA
IC0xODYsNSArMTg0LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCQ2xpZW50CiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJCYWNr
aW5nU3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvSURCQmFja2luZ1N0b3JlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJCYWNraW5nU3RvcmUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJbmZvLmgiCiAjaW5jbHVk
ZSAiSURCRXJyb3IuaCIKICNpbmNsdWRlICJJbmRleEtleS5oIgpAQCAtMTA2LDUgKzEwNCwzIEBA
IHByb3RlY3RlZDoKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmgiCiAjaW5j
bHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgiCiAKQEAgLTIxNCw1ICsyMTIsMyBA
QCB2b2lkIElEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Y29ubmVjdGlvblRvCiAKIH0gLy8gbmFtZXNw
YWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5oCShy
ZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkNvbm5lY3Rpb25Ub0NsaWVudERlbGVnYXRlLmgiCiAjaW5jbHVkZSA8d3RmL0hh
c2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC05NCw1ICs5MiwzIEBAIHByaXZhdGU6
CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURC
Q29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudERl
bGVnYXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNl
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQlJlc291cmNl
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CkBAIC03Nyw1ICs3NSwzIEBAIHB1YmxpYzoKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbi5jcHAJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJT
ZXJpYWxpemF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIsMTEgKzIyLDEwIEBACiAgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KKwog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlNlcmlhbGl6YXRpb24uaCIKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgogI2lu
Y2x1ZGUgIklEQktleVBhdGguaCIKICNpbmNsdWRlICJLZXllZENvZGluZy5oIgpAQCAtNDE5LDUg
KzQxOCwzIEBAIGJvb2wgZGVzZXJpYWxpemVJREJLZXlEYXRhKGNvbnN0IHVpbnQ4X3QKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2Vy
aWFsaXphdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleVBhdGguaCIKICNpbmNsdWRl
ICJTaGFyZWRCdWZmZXIuaCIKIApAQCAtNDEsNSArMzksMyBAQCBSZWZQdHI8U2hhcmVkQnVmZmVy
PiBzZXJpYWxpemVJREJLZXlEYXRhCiBib29sIGRlc2VyaWFsaXplSURCS2V5RGF0YShjb25zdCB1
aW50OF90KiBidWZmZXIsIHNpemVfdCBidWZmZXJTaXplLCBJREJLZXlEYXRhJik7CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlhbGl6
YXRpb25Db250ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNvbnRleHQuY3BwCShyZXZpc2lvbiAyNzUx
MjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFs
aXphdGlvbkNvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw4ICszMSw2IEBACiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSlNPYmplY3RJbmxpbmVzLmg+CiAjaW5jbHVkZSA8cGFsL1Nl
c3Npb25JRC5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogbmFtZXNwYWNlIElEQlNlcnZlciB7CkBAIC0xMDQsNSArMTAyLDMgQEAgSURC
U2VyaWFsaXphdGlvbkNvbnRleHQ6OklEQlNlcmlhbGl6YXRpbwogCiB9IC8vIG5hbWVzcGFjZSBJ
REJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNvbnRleHQu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
SURCU2VyaWFsaXphdGlvbkNvbnRleHQuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlhbGl6YXRpb25Db250ZXh0LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkpTSURCU2VyaWFsaXphdGlvbkds
b2JhbE9iamVjdC5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1N0cm9uZ0lubGluZXMuaD4K
ICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9TdHJ1Y3R1cmVJbmxpbmVzLmg+CkBAIC02MSw1ICs1
OSwzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2Vy
dmVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJTZXJ2ZXIuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVxdWVzdERhdGEuaCIKICNp
bmNsdWRlICJJREJSZXN1bHREYXRhLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgpAQCAtNzk3LDUg
Kzc5NSwzIEBAIHZvaWQgSURCU2VydmVyOjpzdG9wRGF0YWJhc2VBY3Rpdml0aWVzT24KIAogfSAv
LyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmgJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiU3RvcmFn
ZVF1b3RhTWFuYWdlci5oIgpAQCAtMTM5LDUgKzEzNywzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFt
ZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lu
ZGV4VmFsdWVFbnRyeS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmRleFZhbHVlRW50cnkuaCIKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC0yMjgsNSArMjI2LDMgQEAgSW5kZXhWYWx1ZUVudHJ5OjpJdGVy
YXRvciBJbmRleFZhbHVlRW50cgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVFbnRy
eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JbmRleFZhbHVlRW50cnkuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVFbnRyeS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTk4LDUgKzk2LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVy
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRl
eFZhbHVlU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlU3RvcmUuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCi0KICNpbmNsdWRlICJJREJFcnJvci5oIgogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5o
IgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKQEAgLTQxNSw1ICs0MTMsMyBAQCBTdHJpbmcgSW5kZXhW
YWx1ZVN0b3JlOjpsb2dnaW5nU3RyaW5nKCkgCiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhW
YWx1ZVN0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL0luZGV4VmFsdWVTdG9yZS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1cnNvckluZm8uaCIKICNpbmNsdWRl
ICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSW5kZXhWYWx1ZUVudHJ5LmgiCkBAIC0xMTQsNSAr
MTEyLDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlCYWNraW5nU3Rv
cmVUcmFuc2FjdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCAr
MjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1lbW9yeUJhY2tpbmdTdG9y
ZVRyYW5zYWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQktleVJhbmdlRGF0YS5oIgogI2luY2x1ZGUgIklEQlZhbHVlLmgiCiAjaW5jbHVkZSAi
SW5kZXhlZERCLmgiCkBAIC0yOTIsNSArMjkwLDMgQEAgdm9pZCBNZW1vcnlCYWNraW5nU3RvcmVU
cmFuc2FjdGlvbjo6ZmluaQogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9y
ZVRyYW5zYWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmgJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlC
YWNraW5nU3RvcmVUcmFuc2FjdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBA
CiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJJREJEYXRhYmFzZUluZm8uaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVk
ZSAiSURCVHJhbnNhY3Rpb25JbmZvLmgiCkBAIC0xMDQsNSArMTAyLDMgQEAgcHJpdmF0ZToKIAog
fSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlDdXJzb3IuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlDdXJzb3IuY3BwCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5Q3Vyc29yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNjEsNSArNTksMyBAQCBNZW1vcnlDdXJzb3IqIE1lbW9yeUN1cnNvcjo6Y3Vyc29yRm9ySWRl
CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5Q3Vyc29yLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUN1cnNvci5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5Q3Vyc29yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdt
YSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1
cnNvckluZm8uaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTUsNSArNTMsMyBAQCBwcm90
ZWN0ZWQ6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SURCQmFja2luZ1N0b3JlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJNZW1vcnlJREJCYWNraW5nU3RvcmUuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIklEQkdldEFsbFJl
Y29yZHNEYXRhLmgiCiAjaW5jbHVkZSAiSURCR2V0UmVjb3JkRGF0YS5oIgpAQCAtNjM1LDUgKzYz
MywzIEBAIHZvaWQgTWVtb3J5SURCQmFja2luZ1N0b3JlOjpjbG9zZSgpCiAKIH0gLy8gbmFtZXNw
YWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oCShy
ZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkJhY2tpbmdTdG9yZS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIklEQlJlc291cmNlSWRlbnRpZmllci5oIgpAQCAtMTA3LDUgKzEwNSwz
IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXguY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJ
bmRleC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2
LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJNZW1vcnlJbmRleC5oIgogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJFcnJvci5oIgogI2lu
Y2x1ZGUgIklEQkdldEFsbFJlc3VsdC5oIgogI2luY2x1ZGUgIklEQkdldFJlc3VsdC5oIgpAQCAt
MjY1LDUgKzI2MywzIEBAIE1lbW9yeUluZGV4Q3Vyc29yKiBNZW1vcnlJbmRleDo6bWF5YmVPcGUK
IAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SW5kZXguaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCSW5kZXhJ
bmZvLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KQEAgLTEwOCw1ICsxMDYsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFj
ZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL01lbW9yeUluZGV4Q3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SW5kZXhDdXJzb3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5SW5kZXhDdXJzb3IuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2lu
Y2x1ZGUgIklEQkdldFJlc3VsdC5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgpAQCAt
MjIyLDUgKzIyMCwzIEBAIHZvaWQgTWVtb3J5SW5kZXhDdXJzb3I6OmluZGV4VmFsdWVDaGFuZ2UK
IAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleEN1cnNvci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleEN1cnNv
ci5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgog
I2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgpAQCAtNTcsNSArNTUsMyBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmUu
Y3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5T2JqZWN0U3RvcmUu
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGlu
Z1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIklEQkVycm9yLmgiCiAjaW5jbHVkZSAiSURCR2V0QWxs
UmVzdWx0LmgiCkBAIC01MTcsNSArNTE1LDMgQEAgdm9pZCBNZW1vcnlPYmplY3RTdG9yZTo6cmVu
YW1lSW5kZXgoTWVtbwogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeU9iamVjdFN0b3JlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0
U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSAiSW5kZXhLZXkuaCIKQEAgLTE0MSw1ICsxMzksMyBAQCBw
cml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuaCIKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCR2V0UmVzdWx0LmgiCiAjaW5jbHVkZSAiTG9n
Z2luZy5oIgogI2luY2x1ZGUgIk1lbW9yeU9iamVjdFN0b3JlLmgiCkBAIC0zNTIsNSArMzUwLDMg
QEAgdm9pZCBNZW1vcnlPYmplY3RTdG9yZUN1cnNvcjo6aXRlcmF0ZShjbwogCiB9IC8vIG5hbWVz
cGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29y
LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZUN1cnNvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4
ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
Ci0KICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgog
I2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgpAQCAtNjksNSArNjcsMyBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tp
bmdTdG9yZS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiU1FMaXRl
SURCQmFja2luZ1N0b3JlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgi
CiAjaW5jbHVkZSAiSURCR2V0QWxsUmVjb3Jkc0RhdGEuaCIKQEAgLTMwODUsNSArMzA4MywzIEBA
IGJvb2wgU1FMaXRlSURCQmFja2luZ1N0b3JlOjpoYXNUcmFuc2FjdGkKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQmFja2luZ1N0b3JlLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSURCQmFja2luZ1N0b3JlLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJbmZvLmgiCkBAIC0yMjgsNSArMjI2LDMgQEAgcHJp
dmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJD
dXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQ3Vyc29yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYs
OCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNRTGl0ZUlEQkN1cnNv
ci5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJz
b3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCR2V0UmVzdWx0LmgiCiAjaW5jbHVkZSAiSURCU2VyaWFs
aXphdGlvbi5oIgpAQCAtNzA3LDUgKzcwNSwzIEBAIGludDY0X3QgU1FMaXRlSURCQ3Vyc29yOjpj
dXJyZW50UmVjb3JkUm8KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FM
aXRlSURCQ3Vyc29yLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29yUmVjb3JkLmgiCiAjaW5jbHVkZSAiSURCSW5kZXhJ
bmZvLmgiCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgpAQCAtMTQzLDUgKzE0MSwzIEBAIHByaXZh
dGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24uY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJ
REJUcmFuc2FjdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI1LDggKzI1LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJT
UUxpdGVJREJUcmFuc2FjdGlvbi5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSW5kZXhlZERCLmgiCiAjaW5j
bHVkZSAiTG9nZ2luZy5oIgpAQCAtMjI1LDUgKzIyMywzIEBAIHZvaWQgU1FMaXRlSURCVHJhbnNh
Y3Rpb246OmFkZFJlbW92ZWRCbG8KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFu
c2FjdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24u
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRXJyb3IuaCIKICNpbmNs
dWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbklu
Zm8uaCIKQEAgLTk0LDUgKzkyLDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2Vy
dmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9T
ZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU2VydmVyT3BlbkRCUmVxdWVzdC5jcHAJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2ZXJP
cGVuREJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNlcnZlck9wZW5EQlJlcXVlc3QuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVzdWx0RGF0YS5oIgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04Nyw1ICs4NSwzIEBAIHZvaWQgU2VydmVyT3BlbkRCUmVx
dWVzdDo6Y29ubmVjdGlvbkNsb3MKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2ZXJPcGVuREJS
ZXF1ZXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL1NlcnZlck9wZW5EQlJlcXVlc3QuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NlcnZlck9wZW5EQlJlcXVlc3QuaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSURCUmVxdWVzdERhdGEuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5o
PgpAQCAtNzQsNSArNzIsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1
ZUlEQkRhdGFiYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJh
c2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2UuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGllcy5oIgogI2luY2x1ZGUg
IklEQkN1cnNvckluZm8uaCIKICNpbmNsdWRlICJJREJHZXRBbGxSZWNvcmRzRGF0YS5oIgpAQCAt
MTI1MSw1ICsxMjQ5LDMgQEAgUmVmUHRyPFNlcnZlck9wZW5EQlJlcXVlc3Q+IFVuaXF1ZUlEQkRh
dAogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFi
YXNlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsy
NSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJCYWNraW5nU3RvcmUuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUlkZW50
aWZpZXIuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIKQEAgLTE3MSw1ICsxNjksMyBA
QCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVj
dGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRh
YmFzZUNvbm5lY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgi
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkNvbm5lY3Rp
b25Ub0NsaWVudC5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uSW5mby5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKQEAgLTIzMyw1ICsyMzEsMyBAQCB2b2lkIFVuaXF1ZUlEQkRhdGFiYXNlQ29u
bmVjdGlvbjo6ZGVsZXRlCiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VD
b25uZWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0
YWJhc2VDb25uZWN0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklE
QlNlcnZlci5oIgogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNlLmgiCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KQEAgLTEwMSw1ICs5OSwzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNl
IElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJh
bnNhY3Rpb24uY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkl0ZXJhdGVDdXJzb3JEYXRhLmgiCiAjaW5jbHVkZSAi
SURCUmVzdWx0RGF0YS5oIgogI2luY2x1ZGUgIklEQlNlcnZlci5oIgpAQCAtNDE1LDUgKzQxMywz
IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbjo6ZGlkQWMKIAogfSAvLyBuYW1l
c3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNl
VHJhbnNhY3Rpb24uaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRXJyb3IuaCIKICNpbmNsdWRlICJJREJU
cmFuc2FjdGlvbkluZm8uaCIKICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0xMDYsNSArMTA0LDMg
QEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCQ3Vy
c29ySW5mby5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYs
OCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkN1cnNvckluZm8u
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRGF0YWJh
c2UuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbi5oIgogI2luY2x1ZGUgIkluZGV4ZWREQi5o
IgpAQCAtMTEzLDUgKzExMSwzIEBAIFN0cmluZyBJREJDdXJzb3JJbmZvOjpsb2dnaW5nU3RyaW5n
KCkgY28KICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvckluZm8uaAkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvcklu
Zm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5UmFuZ2VEYXRh
LmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCiAKQEAgLTEzMyw1ICsxMzEs
MyBAQCBib29sIElEQkN1cnNvckluZm86OmRlY29kZShEZWNvZGVyJiBkZWNvCiB9CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvclJl
Y29yZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3No
YXJlZC9JREJDdXJzb3JSZWNvcmQuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvclJlY29yZC5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSURCVmFs
dWUuaCIKIApAQCAtNzEsNSArNjksMyBAQCBpbmxpbmUgSURCQ3Vyc29yUmVjb3JkIElEQkN1cnNv
clJlY29yZDo6CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHAJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJE
YXRhYmFzZUluZm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2IEBACiAKICNpbmNs
dWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBJREJEYXRhYmFzZUluZm86OklEQkRhdGFi
YXNlSW5mbygpCkBAIC0xNzcsNSArMTc1LDMgQEAgdm9pZCBJREJEYXRhYmFzZUluZm86OnNldE1h
eEluZGV4SUQodWludAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZUluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmgJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJE
YXRhYmFzZUluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21h
IG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCT2Jq
ZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KIApAQCAtMTE2LDUgKzEx
NCwzIEBAIGJvb2wgSURCRGF0YWJhc2VJbmZvOjpkZWNvZGUoRGVjb2RlciYgZGUKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJh
c2VOYW1lQW5kVmVyc2lvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmgJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJEYXRh
YmFzZU5hbWVBbmRWZXJzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAog
I3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC02Nyw1ICs2
NSwzIEBAIGlubGluZSBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uIElEQkRhdGEKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRXJyb3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJFcnJvci5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDgg
KzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJFcnJvci5oIgogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJET01FeGNlcHRpb24uaCIK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNjYsNSArNjQsMyBAQCBSZWZQdHI8RE9NRXhjZXB0
aW9uPiBJREJFcnJvcjo6dG9ET01FeGNlCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmgJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJv
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJET01FeGNlcHRpb24uaCIK
ICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CkBAIC05OCw1ICs5NiwzIEBAIGJvb2wgSURCRXJyb3I6OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyLCAKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHAJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJHZXRBbGxSZWNvcmRzRGF0YS5o
IgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlSYW5n
ZURhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51bWJlcnMuaD4K
IApAQCAtNTAsNSArNDgsMyBAQCBTdHJpbmcgSURCR2V0QWxsUmVjb3Jkc0RhdGE6OmxvZ2dpbmdT
dHJpCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuaAkocmV2
aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVk
L0lEQkdldEFsbFJlY29yZHNEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQktleVJhbmdlRGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgogCkBAIC04
NCw1ICs4MiwzIEBAIGJvb2wgSURCR2V0QWxsUmVjb3Jkc0RhdGE6OmRlY29kZShEZWNvZGUKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURC
R2V0UmVjb3JkRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0UmVjb3JkRGF0
YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJJREJHZXRSZWNvcmREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5oIgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC00Nyw1ICs0NSwzIEBAIFN0cmluZyBJREJHZXRSZWNvcmREYXRhOjpsb2dnaW5n
U3RyaW5nKCkKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJHZXRSZWNvcmREYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuaAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lE
QkdldFJlY29yZERhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJh
Z21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURC
S2V5UmFuZ2VEYXRhLmgiCiAjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIApAQCAtNzEsNSAr
NjksMyBAQCBib29sIElEQkdldFJlY29yZERhdGE6OmRlY29kZShEZWNvZGVyJiBkCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkluZGV4
SW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0lEQkluZGV4SW5mby5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8uY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURC
SW5kZXhJbmZvLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlTnVtYmVycy5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CkBAIC02OSw1ICs2NywzIEBAIFN0cmluZyBJREJJbmRleEluZm86OmNvbmRlbnNlZExvZ2dp
bmdTdHIKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJJbmRleEluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSW5kZXhJbmZvLmgJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8u
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0xMDAsNSArOTgsMyBAQCBib29sIElE
QkluZGV4SW5mbzo6ZGVjb2RlKERlY29kZXImIGRlY29kCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQv
SURCSXRlcmF0ZUN1cnNvckRhdGEuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw2IEBACiAjaW5jbHVkZSAiSURCSXRlcmF0ZUN1cnNv
ckRhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51bWJlcnMuaD4K
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IElEQkl0ZXJhdGVDdXJzb3JEYXRhIElEQkl0ZXJhdGVDdXJzb3JEYXRhOjppc29sYXRlZENvcHko
KSBjb25zdApAQCAtNDYsNSArNDQsMyBAQCBTdHJpbmcgSURCSXRlcmF0ZUN1cnNvckRhdGE6Omxv
Z2dpbmdTdHJpCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEu
aAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIklEQktleURhdGEuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtODQsNSAr
ODIsMyBAQCBib29sIElEQkl0ZXJhdGVDdXJzb3JEYXRhOjpkZWNvZGUoRGVjb2RlCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVj
dFN0b3JlSW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9yZUlu
Zm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw2IEBACiAjaW5jbHVkZSAiSURCT2Jq
ZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogSURC
T2JqZWN0U3RvcmVJbmZvOjpJREJPYmplY3RTdG9yZUluZm8oKQpAQCAtMTQ3LDUgKzE0NSwzIEBA
IFN0cmluZyBJREJPYmplY3RTdG9yZUluZm86OmNvbmRlbnNlZExvZ2cKICNlbmRpZgogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RT
dG9yZUluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCT2JqZWN0U3RvcmVJbmZvLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9yZUluZm8uaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCSW5kZXhJbmZvLmgiCiAjaW5j
bHVkZSAiSURCS2V5UGF0aC5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC0xMDYsNSAr
MTA0LDMgQEAgYm9vbCBJREJPYmplY3RTdG9yZUluZm86OmRlY29kZShEZWNvZGVyJgogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXF1
ZXN0RGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIklEQlJlcXVlc3REYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub1NlcnZlci5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNl
LmgiCiAjaW5jbHVkZSAiSURCT3BlbkRCUmVxdWVzdC5oIgpAQCAtMTU3LDUgKzE1NSwzIEBAIHVp
bnQ2NF90IElEQlJlcXVlc3REYXRhOjpyZXF1ZXN0ZWRWZXJzaW8KIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVxdWVzdERhdGEuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURC
UmVxdWVzdERhdGEuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIklEQlJl
c291cmNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIkluZGV4ZWREQi5oIgpAQCAtMTg0LDUgKzE4
MiwzIEBAIGJvb2wgSURCUmVxdWVzdERhdGE6OmRlY29kZShEZWNvZGVyJiBkZWMKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3Vy
Y2VJZGVudGlmaWVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3VyY2VJZGVudGlmaWVyLmNwcAkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc291cmNl
SWRlbnRpZmllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCiAjaW5jbHVkZSAiSURCUmVx
dWVzdC5oIgpAQCAtMTA2LDUgKzEwNCwzIEBAIFN0cmluZyBJREJSZXNvdXJjZUlkZW50aWZpZXI6
OmxvZ2dpbmdTdHIKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3VyY2VJZGVudGlm
aWVyLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
OCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiUHJvY2Vzc0lkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdIYXNoLmg+CiAKQEAgLTE1Myw1ICsxNTEsMyBAQCBpbmxpbmUgV2ViQ29yZTo6SURCQ29u
bmVjdGlvbklkZW50aWZpZXIgCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc3VsdERhdGEuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURC
UmVzdWx0RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXN1bHREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNlLmgiCiAjaW5jbHVk
ZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0
YWJhc2VUcmFuc2FjdGlvbi5oIgpAQCAtMjQ2LDUgKzI0NCwzIEBAIGNvbnN0IElEQkdldEFsbFJl
c3VsdCYgSURCUmVzdWx0RGF0YTo6Z2UKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXN1bHREYXRhLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJSZXN1bHREYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklE
QkRhdGFiYXNlSW5mby5oIgogI2luY2x1ZGUgIklEQkVycm9yLmgiCiAjaW5jbHVkZSAiSURCR2V0
QWxsUmVzdWx0LmgiCkBAIC0yNjMsNSArMjYxLDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRy
YWl0czxXZWJDb3JlOjpJRAogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3Bw
CShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCVHJhbnNhY3Rpb25JbmZvLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYs
NiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uSW5mby5o
IgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJUcmFuc2Fj
dGlvbi5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xMTksNSArMTE3LDMgQEAgU3RyaW5n
IElEQlRyYW5zYWN0aW9uSW5mbzo6bG9nZ2luZ1N0cmluZwogI2VuZGlmCiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlRyYW5zYWN0aW9uSW5m
by5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJUcmFuc2FjdGlvbkluZm8uaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlRyYW5zYWN0aW9uSW5mby5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIKICNpbmNsdWRl
ICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbk1vZGUu
aCIKQEAgLTEyOSw1ICsxMjcsMyBAQCBib29sIElEQlRyYW5zYWN0aW9uSW5mbzo6ZGVjb2RlKERl
Y29kZXImCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0luZGV4S2V5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
SW5kZXhLZXkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIEluZGV4S2V5OjpJbmRleEtleSgpCkBAIC04NSw1ICs4MywzIEBAIFZlY3Rv
cjxJREJLZXlEYXRhPiBJbmRleEtleTo6bXVsdGlFbnRyeSgKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuaAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hh
cmVkL0luZGV4S2V5LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdt
YSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktl
eURhdGEuaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KQEAgLTUyLDUgKzUwLDMgQEAgcHJpdmF0ZToKIHR5cGVkZWYgSGFzaE1hcDx1aW50NjRfdCwg
SW5kZXhLZXk+IEluZGV4SURUb0luZGV4S2V5TWFwOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0
aWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNiBAQAogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJp
bmRpbmdVdGlsaXRpZXMuaCIKIAogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKQEAgLTUyMiw1
ICs1MjAsMyBAQCBPcHRpb25hbDxKU0M6OkpTVmFsdWU+IGRlc2VyaWFsaXplSURCVmFsCiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxpdGll
cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdV
dGlsaXRpZXMuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSURCQmluZGluZ1V0aWxpdGllcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBA
CiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJJREJLZXlQYXRoLmgiCiAjaW5jbHVkZSAiSW5kZXhLZXkuaCIKICNpbmNsdWRlIDx3dGYv
Rm9yd2FyZC5oPgpAQCAtNjYsNSArNjQsMyBAQCBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkpTR2xv
YmFsT2JqZWN0KiwgCiAKIE9wdGlvbmFsPEpTQzo6SlNWYWx1ZT4gZGVzZXJpYWxpemVJREJWYWx1
ZVdpdGhLZXlJbmplY3Rpb24oSlNDOjpKU0dsb2JhbE9iamVjdCYsIGNvbnN0IElEQlZhbHVlJiwg
Y29uc3QgSURCS2V5RGF0YSYsIGNvbnN0IE9wdGlvbmFsPElEQktleVBhdGg+Jik7CiB9Ci0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oCShyZXZpc2lvbiAyNzUx
MjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRJbmRleGVkREIu
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGll
cy5oIgogI2luY2x1ZGUgIklETFR5cGVzLmgiCiAjaW5jbHVkZSAiSlNET01Db252ZXJ0QmFzZS5o
IgpAQCAtNjcsNSArNjUsMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBKU0NvbnZlcnRlcjxJRExJREJW
YWx1CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmpl
Y3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMzYsMTAgKzIzNiw5IEBAIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIEpTRE9NR2xvYmFsT2JqZWMKICAgICAgICAgcmV0dXJuIGpzQ2FzdDxjb25zdCBK
U1dvcmtlckdsb2JhbFNjb3BlQmFzZSo+KHRoaXMpLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7
CiAgICAgaWYgKGluaGVyaXRzPEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZT4odm0oKSkpCiAgICAg
ICAgIHJldHVybiBqc0Nhc3Q8Y29uc3QgSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlKj4odGhpcykt
PnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
ICAgICBpZiAoaW5oZXJpdHM8SlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Pih2bSgpKSkK
ICAgICAgICAgcmV0dXJuIGpzQ2FzdDxjb25zdCBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmpl
Y3QqPih0aGlzKS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwotI2VuZGlmCisKICAgICBkYXRh
TG9nKCJVbmV4cGVjdGVkIGdsb2JhbCBvYmplY3Q6ICIsIEpTVmFsdWUodGhpcyksICJcbiIpOwog
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CkBA
IC00NzUsMTAgKzQ3NCw5IEBAIHN0YXRpYyBTY3JpcHRNb2R1bGVMb2FkZXIqIHNjcmlwdE1vZHVs
ZUwKICAgICAgICAgcmV0dXJuICZqc0Nhc3Q8Y29uc3QgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2Uq
PihnbG9iYWxPYmplY3QpLT53cmFwcGVkKCkubW9kdWxlTG9hZGVyKCk7CiAgICAgaWYgKGdsb2Jh
bE9iamVjdC0+aW5oZXJpdHM8SlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlPih2bSkpCiAgICAgICAg
IHJldHVybiAmanNDYXN0PGNvbnN0IEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSo+KGdsb2JhbE9i
amVjdCktPndyYXBwZWQoKS5tb2R1bGVMb2FkZXIoKTsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKICAgICBpZiAoZ2xvYmFsT2JqZWN0LT5pbmhlcml0czxKU0lEQlNlcmlhbGl6YXRpb25H
bG9iYWxPYmplY3Q+KHZtKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0jZW5kaWYKKwogICAg
IGRhdGFMb2coIlVuZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdDogIiwgSlNWYWx1ZShnbG9iYWxPYmpl
Y3QpLCAiXG4iKTsKICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVy
biBudWxscHRyOwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJDdXJzb3JD
dXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURC
Q3Vyc29yQ3VzdG9tLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNJREJDdXJzb3JDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNJREJDdXJzb3IuaCIKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxp
dGllcy5oIgogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgogI2luY2x1ZGUgIkpTSURCQ3Vyc29y
V2l0aFZhbHVlLmgiCkBAIC03NSw1ICs3MywzIEBAIEpTVmFsdWUgdG9KUyhKU0M6OkpTR2xvYmFs
T2JqZWN0KiBsZXhpY2EKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0lEQkN1cnNvcldpdGhWYWx1ZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJREJDdXJzb3JXaXRoVmFsdWVDdXN0b20uY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQkN1cnNvcldpdGhW
YWx1ZUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJKU0lEQkN1cnNvcldpdGhWYWx1ZS5oIgogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJCaW5kaW5nVXRpbGl0aWVzLmgi
CiAjaW5jbHVkZSAiSURCQ3Vyc29yV2l0aFZhbHVlLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENv
cmUvSlNDSW5saW5lcy5oPgpAQCAtNTMsNSArNTEsMyBAQCB2b2lkIEpTSURCQ3Vyc29yV2l0aFZh
bHVlOjp2aXNpdEFkZGl0aW9uCiBERUZJTkVfVklTSVRfQURESVRJT05BTF9DSElMRFJFTihKU0lE
QkN1cnNvcldpdGhWYWx1ZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNJREJJbmRleEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNJREJJbmRleEN1c3RvbS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCSW5kZXhDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNJREJJ
bmRleC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJJ
bmRleC5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0hlYXBJbmxpbmVzLmg+CiAKQEAgLTQz
LDUgKzQxLDMgQEAgdm9pZCBKU0lEQkluZGV4Ojp2aXNpdEFkZGl0aW9uYWxDaGlsZHJlbgogREVG
SU5FX1ZJU0lUX0FERElUSU9OQUxfQ0hJTERSRU4oSlNJREJJbmRleCk7CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJPYmplY3RTdG9yZUN1c3RvbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJPYmplY3RTdG9yZUN1
c3RvbS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSURCT2JqZWN0U3RvcmVDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2
IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNJREJPYmplY3RTdG9y
ZS5oIgogCkBAIC00Niw1ICs0NCwzIEBAIHZvaWQgSlNJREJPYmplY3RTdG9yZTo6dmlzaXRBZGRp
dGlvbmFsQ2gKIERFRklORV9WSVNJVF9BRERJVElPTkFMX0NISUxEUkVOKEpTSURCT2JqZWN0U3Rv
cmUpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJREJSZXF1ZXN0Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlJlcXVlc3RDdXN0b20uY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlJlcXVlc3RDdXN0
b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJKU0RP
TUNvbnZlcnRJbmRleGVkREIuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnRJbnRlcmZhY2UuaCIK
QEAgLTEwMCw1ICs5OCwzIEBAIHZvaWQgSlNJREJSZXF1ZXN0Ojp2aXNpdEFkZGl0aW9uYWxDaGls
ZHIKIERFRklORV9WSVNJVF9BRERJVElPTkFMX0NISUxEUkVOKEpTSURCUmVxdWVzdCk7CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xv
YmFsT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Qu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2IEBACiAKICNpbmNsdWRlICJXZWJDb3Jl
SlNDbGllbnREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwpAQCAtNjYsNSArNjQsMyBAQCB2
b2lkIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6ZGVzCiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Qu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6
YXRpb25HbG9iYWxPYmplY3QuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkVtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgog
I2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCiAKQEAgLTY0LDUgKzYyLDMgQEAgcHJpdmF0
ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCVHJhbnNh
Y3Rpb25DdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSURCVHJhbnNhY3Rpb25DdXN0b20uY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlRyYW5zYWN0aW9uQ3VzdG9tLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkpT
SURCVHJhbnNhY3Rpb24uaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSlNET01CaW5kaW5nLmgiCiAKIApAQCAtNDMsNSArNDEsMyBAQCB2b2lkIEpTSURCVHJh
bnNhY3Rpb246OnZpc2l0QWRkaXRpb25hbENoCiBERUZJTkVfVklTSVRfQURESVRJT05BTF9DSElM
RFJFTihKU0lEQlRyYW5zYWN0aW9uKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1
ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXpl
ZFNjcmlwdFZhbHVlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDI4
Nyw3ICs0Mjg3LDYgQEAgdWludDMyX3QgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjp3aXJlRm9ybQog
ICAgIHJldHVybiBDdXJyZW50VmVyc2lvbjsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogVmVjdG9yPFN0cmluZz4gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpibG9iVVJMc0lzb2xh
dGVkQ29weSgpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFN0cmluZz4gcmVzdWx0OwpAQCAtNDMzOCw2
ICs0MzM3LDQgQEAgSURCVmFsdWUgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjp3cml0ZUJsbwogICAg
IHJldHVybiB2YWx1ZTsKIH0KIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaAkocmV2aXNpb24gMjc1MTIzKQorKysg
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTk3LDEyICs5Nyw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBWZWN0b3I8dWlu
dDhfdD4mIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2RhdGE7IH0KICAgICBib29sIGhhc0Jsb2JV
UkxzKCkgY29uc3QgeyByZXR1cm4gIW1fYmxvYlVSTHMuaXNFbXB0eSgpOyB9CiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBWZWN0b3I8U3RyaW5nPiBibG9iVVJMc0lzb2xhdGVk
Q29weSgpIGNvbnN0OwogICAgIHZvaWQgd3JpdGVCbG9ic1RvRGlza0ZvckluZGV4ZWREQihDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKElEQlZhbHVlJiYpPiYmKTsKICAgICBJREJWYWx1ZSB3cml0ZUJs
b2JzVG9EaXNrRm9ySW5kZXhlZERCU3luY2hyb25vdXNseSgpOwotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAgICAgc3RhdGljIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+
IGNyZWF0ZUZyb21XaXJlQnl0ZXMoVmVjdG9yPHVpbnQ4X3Q+JiYgZGF0YSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZShXVEZNb3ZlKGRh
dGEpKSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnRE
YXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3Jl
SlNDbGllbnREYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc2LDkg
Kzc2LDcgQEAgSlNWTUNsaWVudERhdGE6OkpTVk1DbGllbnREYXRhKFZNJiB2bSkKICNpZiBFTkFC
TEUoV0VCX0FVRElPKQogICAgICwgbV9oZWFwQ2VsbFR5cGVGb3JKU0F1ZGlvV29ya2xldEdsb2Jh
bFNjb3BlKEpTQzo6SXNvSGVhcENlbGxUeXBlOjpjcmVhdGU8SlNBdWRpb1dvcmtsZXRHbG9iYWxT
Y29wZT4oKSkKICNlbmRpZgotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgICwgbV9o
ZWFwQ2VsbFR5cGVGb3JKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QoSlNDOjpJc29IZWFw
Q2VsbFR5cGU6OmNyZWF0ZTxKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Q+KCkpCi0jZW5k
aWYKICAgICAsIG1fZG9tQnVpbHRpbkNvbnN0cnVjdG9yU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQo
dm0uaGVhcCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgSlNET01CdWlsdGluQ29uc3RydWN0
b3JCYXNlKQogICAgICwgbV9kb21Db25zdHJ1Y3RvclNwYWNlIElTT19TVUJTUEFDRV9JTklUKHZt
LmhlYXAsIHZtLmNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIEpTRE9NQ29uc3RydWN0b3JCYXNlKQog
ICAgICwgbV9kb21XaW5kb3dQcm9wZXJ0aWVzU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVh
cCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgSlNET01XaW5kb3dQcm9wZXJ0aWVzKQpAQCAt
ODYsOSArODQsNyBAQCBKU1ZNQ2xpZW50RGF0YTo6SlNWTUNsaWVudERhdGEoVk0mIHZtKQogICAg
ICwgbV9ydW50aW1lTWV0aG9kU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVhcCwgdm0uY2Vs
bEhlYXBDZWxsVHlwZS5nZXQoKSwgUnVudGltZU1ldGhvZCkgLy8gSGFzaDoweGY3MGM0YTg1CiAg
ICAgLCBtX3J1bnRpbWVPYmplY3RTcGFjZSBJU09fU1VCU1BBQ0VfSU5JVCh2bS5oZWFwLCBtX3J1
bnRpbWVPYmplY3RIZWFwQ2VsbFR5cGUuZ2V0KCksIEpTQzo6QmluZGluZ3M6OlJ1bnRpbWVPYmpl
Y3QpCiAgICAgLCBtX3dpbmRvd1Byb3h5U3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVhcCwg
bV93aW5kb3dQcm94eUhlYXBDZWxsVHlwZS5nZXQoKSwgSlNXaW5kb3dQcm94eSkKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1faWRiU2VyaWFsaXphdGlvblNwYWNlIElTT19T
VUJTUEFDRV9JTklUKHZtLmhlYXAsIG1faGVhcENlbGxUeXBlRm9ySlNJREJTZXJpYWxpemF0aW9u
R2xvYmFsT2JqZWN0LmdldCgpLCBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QpCi0jZW5k
aWYKICAgICAsIG1fc3Vic3BhY2VzKG1ha2VVbmlxdWU8RE9NSXNvU3Vic3BhY2VzPigpKQogewog
fQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0NsaWVu
dERhdGEuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUpTQ2xpZW50RGF0YS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDcsOSArMTA3LDggQEAg
cHVibGljOgogI2lmIEVOQUJMRShXRUJfQVVESU8pCiAgICAgc3RkOjp1bmlxdWVfcHRyPEpTQzo6
SGVhcENlbGxUeXBlPiBtX2hlYXBDZWxsVHlwZUZvckpTQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGU7
CiAjZW5kaWYKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBzdGQ6OnVuaXF1ZV9w
dHI8SlNDOjpIZWFwQ2VsbFR5cGU+IG1faGVhcENlbGxUeXBlRm9ySlNJREJTZXJpYWxpemF0aW9u
R2xvYmFsT2JqZWN0OwotI2VuZGlmCisKIHByaXZhdGU6CiAgICAgSlNDOjpJc29TdWJzcGFjZSBt
X2RvbUJ1aWx0aW5Db25zdHJ1Y3RvclNwYWNlOwogICAgIEpTQzo6SXNvU3Vic3BhY2UgbV9kb21D
b25zdHJ1Y3RvclNwYWNlOwpAQCAtMTE4LDkgKzExNyw3IEBAIHByaXZhdGU6CiAgICAgSlNDOjpJ
c29TdWJzcGFjZSBtX3J1bnRpbWVNZXRob2RTcGFjZTsKICAgICBKU0M6Oklzb1N1YnNwYWNlIG1f
cnVudGltZU9iamVjdFNwYWNlOwogICAgIEpTQzo6SXNvU3Vic3BhY2UgbV93aW5kb3dQcm94eVNw
YWNlOwotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIEpTQzo6SXNvU3Vic3BhY2Ug
bV9pZGJTZXJpYWxpemF0aW9uU3BhY2U7Ci0jZW5kaWYKICAgICBzdGQ6OnVuaXF1ZV9wdHI8RE9N
SXNvU3Vic3BhY2VzPiBtX3N1YnNwYWNlczsKICAgICBWZWN0b3I8SlNDOjpJc29TdWJzcGFjZSo+
IG1fb3V0cHV0Q29uc3RyYWludFNwYWNlczsKIH07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTExNSw2ICsxMTUsOCBAQAogI2luY2x1ZGUgIkhpZ2hsaWdodFJl
Z2lzdGVyLmgiCiAjaW5jbHVkZSAiSGlzdG9yeS5oIgogI2luY2x1ZGUgIkhpdFRlc3RSZXN1bHQu
aCIKKyNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIKKyNpbmNsdWRlICJJREJPcGVuREJS
ZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSWRsZUNhbGxiYWNrQ29udHJvbGxlci5oIgogI2luY2x1ZGUg
IkltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIkltYWdlTG9hZGVyLmgi
CkBAIC0yODAsMTEgKzI4Miw2IEBACiAjaW5jbHVkZSAiUmVuZGVyRnVsbFNjcmVlbi5oIgogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSNpbmNsdWRlICJJREJDb25uZWN0
aW9uUHJveHkuaCIKLSNpbmNsdWRlICJJREJPcGVuREJSZXF1ZXN0LmgiCi0jZW5kaWYKLQogI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW5jbHVkZSAiQ29udGVudENoYW5nZU9ic2VydmVyLmgi
CiAjaW5jbHVkZSAiQ1NTRm9udFNlbGVjdG9yLmgiCkBAIC0zNDc0LDcgKzM0NzEsNiBAQCB2b2lk
IERvY3VtZW50OjpkaXNhYmxlV2ViQXNzZW1ibHkoY29uc3QgCiAgICAgZnJhbWUoKS0+c2NyaXB0
KCkuZGlzYWJsZVdlYkFzc2VtYmx5KGVycm9yTWVzc2FnZSk7CiB9CiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBEb2N1bWVudDo6
aWRiQ29ubmVjdGlvblByb3h5KCkKIHsKICAgICBpZiAoIW1faWRiQ29ubmVjdGlvblByb3h5KSB7
CkBAIC0zNDg1LDcgKzM0ODEsNiBAQCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogRG9j
dW1lbnQ6CiAgICAgfQogICAgIHJldHVybiBtX2lkYkNvbm5lY3Rpb25Qcm94eS5nZXQoKTsKIH0K
LSNlbmRpZgogCiBTb2NrZXRQcm92aWRlciogRG9jdW1lbnQ6OnNvY2tldFByb3ZpZGVyKCkKIHsK
QEAgLTU0NTUsMTggKzU0NTAsMTQgQEAgdm9pZCBEb2N1bWVudDo6c2V0QmFja0ZvcndhcmRDYWNo
ZVN0YXRlKAogCiAgICAgICAgIGNsZWFyU2hhcmVkT2JqZWN0UG9vbCgpOwogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAgICAgICAgIGlmIChtX2lkYkNvbm5lY3Rpb25Qcm94eSkKICAg
ICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVuZGVkKCpzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCksIHRydWUpOwotI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgTm90SW5CYWNrRm9yd2FyZENhY2hlOgogICAgICAgICBpZiAoY2hpbGROZWVkc1N0eWxl
UmVjYWxjKCkpCiAgICAgICAgICAgICBzY2hlZHVsZVN0eWxlUmVjYWxjKCk7Ci0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAgICAgICAgIGlmIChtX2lkYkNvbm5lY3Rpb25Qcm94eSkKICAg
ICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVuZGVkKCpzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCksIGZhbHNlKTsKLSNlbmRpZgogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEFib3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6CiAgICAgICAgIGJyZWFrOwpJbmRl
eDogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MDEsOSArNzAxLDcgQEAgcHVibGlj
OgogICAgIHZvaWQgZGlzYWJsZUV2YWwoY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpIGZpbmFs
OwogICAgIHZvaWQgZGlzYWJsZVdlYkFzc2VtYmx5KGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdl
KSBmaW5hbDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIElEQkNsaWVudDo6
SURCQ29ubmVjdGlvblByb3h5KiBpZGJDb25uZWN0aW9uUHJveHkoKSBmaW5hbDsKLSNlbmRpZgog
ICAgIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcigpIGZpbmFsOwogICAgIFJlZlB0cjxS
VENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uPiBjcmVhdGVSVENEYXRhQ2hhbm5l
bFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uKCkgZmluYWw7CiAKQEAgLTE5OTQsOSArMTk5Miw3IEBA
IHByaXZhdGU6CiAgICAgVGFyZ2V0Q2xpZW50VG9JZE1hcCBtX2NsaWVudFRvSURNYXA7CiAjZW5k
aWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Qcm94eT4gbV9pZGJDb25uZWN0aW9uUHJveHk7Ci0jZW5kaWYKIAogI2lm
IEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCiAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZjxIVE1M
QXR0YWNobWVudEVsZW1lbnQ+PiBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9FbGVtZW50TWFwOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvZG9tL0VtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9FbXB0eVNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0VtcHR5U2NyaXB0
RXhlY3V0aW9uQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw5ICs1Nyw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGRpc2FibGVFdmFsKGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgfTsKICAgICB2
b2lkIGRpc2FibGVXZWJBc3NlbWJseShjb25zdCBTdHJpbmcmKSBmaW5hbCB7IH07CiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94
eSogaWRiQ29ubmVjdGlvblByb3h5KCkgZmluYWwgeyByZXR1cm4gbnVsbHB0cjsgfQotI2VuZGlm
CiAgICAgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKCkgZmluYWwgeyByZXR1cm4gbnVs
bHB0cjsgfQogCiAgICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShzdGQ6OnVuaXF1ZV9wdHI8SW5z
cGVjdG9yOjpDb25zb2xlTWVzc2FnZT4mJikgZmluYWwgeyB9CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9kb20vRXZlbnROYW1lcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnROYW1lcy5pbgkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
TmFtZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTcxLDcgKzcxLDcgQEAgU3RvcmFnZUV2ZW50CiBT
VkdFdmVudHMgaW50ZXJmYWNlTmFtZT1FdmVudAogU1ZHWm9vbUV2ZW50CiBTVkdab29tRXZlbnRz
IGludGVyZmFjZU5hbWU9U1ZHWm9vbUV2ZW50Ci1JREJWZXJzaW9uQ2hhbmdlRXZlbnQgY29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRQorSURCVmVyc2lvbkNoYW5nZUV2ZW50CiBUb3VjaEV2ZW50
IGNvbmRpdGlvbmFsPVRPVUNIX0VWRU5UUwogRGV2aWNlTW90aW9uRXZlbnQgY29uZGl0aW9uYWw9
REVWSUNFX09SSUVOVEFUSU9OCiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50IGNvbmRpdGlvbmFsPURF
VklDRV9PUklFTlRBVElPTgpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0RmFj
dG9yeS5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXRGYWN0
b3J5LmluCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJn
ZXRGYWN0b3J5LmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNCwxMCArMTQsMTAgQEAgRE9NV2luZG93
CiBFdmVudFNvdXJjZQogRmlsZVJlYWRlcgogRm9udEZhY2VTZXQKLUlEQkRhdGFiYXNlIGNvbmRp
dGlvbmFsPUlOREVYRURfREFUQUJBU0UKLUlEQk9wZW5EQlJlcXVlc3QgY29uZGl0aW9uYWw9SU5E
RVhFRF9EQVRBQkFTRQotSURCUmVxdWVzdCBjb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFCi1J
REJUcmFuc2FjdGlvbiBjb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFCitJREJEYXRhYmFzZQor
SURCT3BlbkRCUmVxdWVzdAorSURCUmVxdWVzdAorSURCVHJhbnNhY3Rpb24KIE1lZGlhQ29udHJv
bGxlciBjb25kaXRpb25hbD1WSURFTwogTWVkaWFEZXZpY2VzIGNvbmRpdGlvbmFsPU1FRElBX1NU
UkVBTQogTWVkaWFLZXlTZXNzaW9uIGNvbmRpdGlvbmFsPUVOQ1JZUFRFRF9NRURJQQpJbmRleDog
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCShyZXZpc2lvbiAy
NzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xMDksOSArMTA5LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9p
ZCBkaXNhYmxlRXZhbChjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBkaXNhYmxlV2ViQXNzZW1ibHkoY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpID0g
MDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZpcnR1YWwgSURCQ2xpZW50
OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSgpID0gMDsKLSNlbmRpZgor
CiAgICAgdmlydHVhbCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIoKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIFJlZlB0cjxSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uPiBj
cmVhdGVSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uKCkgeyByZXR1cm4gbnVs
bHB0cjsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xs
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JD
b250cm9sbGVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzAsOSArMTcw
LDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpjcmVhdGVMYXp5QWdlbgogICAgIG1fYWdl
bnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvcldvcmtlckFnZW50PihwYWdlQ29udGV4dCkp
OwogICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvckRPTVN0b3JhZ2VBZ2Vu
dD4ocGFnZUNvbnRleHQpKTsKICAgICBtX2FnZW50cy5hcHBlbmQobWFrZVVuaXF1ZTxJbnNwZWN0
b3JEYXRhYmFzZUFnZW50PihwYWdlQ29udGV4dCkpOwotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvckluZGV4ZWREQkFn
ZW50PihwYWdlQ29udGV4dCkpOwotI2VuZGlmCiAKICAgICBhdXRvIHNjcmlwdFByb2ZpbGVyQWdl
bnRQdHIgPSBtYWtlVW5pcXVlPEluc3BlY3RvclNjcmlwdFByb2ZpbGVyQWdlbnQ+KHBhZ2VDb250
ZXh0KTsKICAgICBtX2luc3RydW1lbnRpbmdBZ2VudHMtPnNldFBlcnNpc3RlbnRTY3JpcHRQcm9m
aWxlckFnZW50KHNjcmlwdFByb2ZpbGVyQWdlbnRQdHIuZ2V0KCkpOwpJbmRleDogU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVkREJBZ2VudC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVk
REJBZ2VudC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0z
Miw4ICszMiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5k
ZXhlZERCQWdlbnQuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVk
ZSAiQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMuaCIKICNpbmNsdWRlICJET01TdHJpbmdMaXN0Lmgi
CiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCkBAIC03NDAsNCArNzM4LDMgQEAgdm9pZCBJbnNwZWN0
b3JJbmRleGVkREJBZ2VudDo6Y2xlYXJPYmplYwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckluZGV4ZWREQkFnZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVkREJBZ2Vu
dC5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckluZGV4ZWREQkFnZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTMxLDggKzMxLDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIkluc3BlY3RvcldlYkFnZW50QmFzZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVycy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgpAQCAtNzIsNSArNzAsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291
cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2
MCw3ICsxNjAsNiBAQCBwcml2YXRlOgogfTsKIAogY2xhc3MgRW1wdHlEYXRhYmFzZVByb3ZpZGVy
IGZpbmFsIDogcHVibGljIERhdGFiYXNlUHJvdmlkZXIgewotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogICAgIHN0cnVjdCBFbXB0eUlEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGV0ZWdhdGUg
ZmluYWwgOiBwdWJsaWMgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZSB7
CiAgICAgICAgIElEQkNvbm5lY3Rpb25JZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCBmaW5h
bCB7IHJldHVybiB7IH07IH0KICAgICAgICAgdm9pZCBkZWxldGVEYXRhYmFzZShjb25zdCBJREJS
ZXF1ZXN0RGF0YSYpIGZpbmFsIHsgfQpAQCAtMTk4LDcgKzE5Nyw2IEBAIGNsYXNzIEVtcHR5RGF0
YWJhc2VQcm92aWRlciBmaW5hbCA6IHB1YmwKICAgICAgICAgc3RhdGljIGF1dG8mIGVtcHR5Q29u
bmVjdGlvbiA9IElEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyOjpjcmVhdGUoZW1wdHlE
ZWxlZ2F0ZS5nZXQoKSkubGVha1JlZigpOwogICAgICAgICByZXR1cm4gZW1wdHlDb25uZWN0aW9u
OwogICAgIH0KLSNlbmRpZgogfTsKIAogY2xhc3MgRW1wdHlEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dCBmaW5hbCA6IHB1YmxpYyBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCB7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL0RhdGFiYXNlUHJvdmlkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL0RhdGFiYXNlUHJvdmlkZXIuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9EYXRhYmFzZVByb3ZpZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDEw
ICs0MCw3IEBAIGNsYXNzIElEQkNvbm5lY3Rpb25Ub1NlcnZlcjsKIGNsYXNzIFdFQkNPUkVfRVhQ
T1JUIERhdGFiYXNlUHJvdmlkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxEYXRhYmFzZVByb3ZpZGVy
PiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+RGF0YWJhc2VQcm92aWRlcigpOwotCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgdmlydHVhbCBJREJDbGllbnQ6OklEQkNvbm5lY3Rp
b25Ub1NlcnZlciYgaWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQQUw6OlNl
c3Npb25JRCYpID0gMDsKLSNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL1BhZ2UuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9w
YWdlL1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Miw2ICs3Miw3IEBACiAjaW5jbHVkZSAi
SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCIKICNpbmNsdWRlICJIaXN0b3J5Q29udHJvbGxl
ci5oIgogI2luY2x1ZGUgIkhpc3RvcnlJdGVtLmgiCisjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRv
U2VydmVyLmgiCiAjaW5jbHVkZSAiSW1hZ2VPdmVybGF5Q29udHJvbGxlci5oIgogI2luY2x1ZGUg
Ikluc3BlY3RvckNsaWVudC5oIgogI2luY2x1ZGUgIkluc3BlY3RvckNvbnRyb2xsZXIuaCIKQEAg
LTE2MywxMCArMTY0LDYgQEAKICNpbmNsdWRlICJTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLmgi
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotI2luY2x1ZGUgIklEQkNv
bm5lY3Rpb25Ub1NlcnZlci5oIgotI2VuZGlmCi0KICNpZiBFTkFCTEUoV0VCR0wpCiAjaW5jbHVk
ZSAiV2ViR0xTdGF0ZVRyYWNrZXIuaCIKICNlbmRpZgpAQCAtMjg4MiwxMCArMjg3OSw4IEBAIHZv
aWQgUGFnZTo6c2V0U2Vzc2lvbklEKFBBTDo6U2Vzc2lvbklEIHMKICAgICBBU1NFUlQobV9zZXNz
aW9uSUQgPT0gUEFMOjpTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSB8fCBtX3Nl
c3Npb25JRCA9PSBQQUw6OlNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25JRCgpKTsKICAgICBBU1NF
UlQoc2Vzc2lvbklEID09IFBBTDo6U2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkg
fHwgc2Vzc2lvbklEID09IFBBTDo6U2Vzc2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCkpOwogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgaWYgKHNlc3Npb25JRCAhPSBtX3Nlc3Np
b25JRCkKICAgICAgICAgbV9pZGJDb25uZWN0aW9uVG9TZXJ2ZXIgPSBudWxscHRyOwotI2VuZGlm
CiAKICAgICBpZiAoc2Vzc2lvbklEICE9IG1fc2Vzc2lvbklEICYmIG1fc2Vzc2lvblN0b3JhZ2Up
CiAgICAgICAgIG1fc2Vzc2lvblN0b3JhZ2UtPnNldFNlc3Npb25JREZvclRlc3Rpbmcoc2Vzc2lv
bklEKTsKQEAgLTMwNDEsNyArMzAzNiw2IEBAIHZvaWQgUGFnZTo6c2V0QWxsb3dzTWVkaWFEb2N1
bWVudElubGluZVAKIAogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIElE
QkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyJiBQYWdlOjppZGJDb25uZWN0aW9uKCkKIHsK
ICAgICBpZiAoIW1faWRiQ29ubmVjdGlvblRvU2VydmVyKQpAQCAtMzA1OSw3ICszMDUzLDYgQEAg
dm9pZCBQYWdlOjpjbGVhcklEQkNvbm5lY3Rpb24oKQogewogICAgIG1faWRiQ29ubmVjdGlvblRv
U2VydmVyID0gbnVsbHB0cjsKIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFJFU09VUkNFX1VTQUdF
KQogdm9pZCBQYWdlOjpzZXRSZXNvdXJjZVVzYWdlT3ZlcmxheVZpc2libGUoYm9vbCB2aXNpYmxl
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvcGFnZS9QYWdlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC03NDUsMTEgKzc0NSw5IEBAIHB1YmxpYzoK
ICAgICBib29sIGFsbG93c1BsYXliYWNrQ29udHJvbHNGb3JBdXRvcGxheWluZ0F1ZGlvKCkgY29u
c3QgeyByZXR1cm4gbV9hbGxvd3NQbGF5YmFja0NvbnRyb2xzRm9yQXV0b3BsYXlpbmdBdWRpbzsg
fQogICAgIHZvaWQgc2V0QWxsb3dzUGxheWJhY2tDb250cm9sc0ZvckF1dG9wbGF5aW5nQXVkaW8o
Ym9vbCBhbGxvd3NQbGF5YmFja0NvbnRyb2xzRm9yQXV0b3BsYXlpbmdBdWRpbykgeyBtX2FsbG93
c1BsYXliYWNrQ29udHJvbHNGb3JBdXRvcGxheWluZ0F1ZGlvID0gYWxsb3dzUGxheWJhY2tDb250
cm9sc0ZvckF1dG9wbGF5aW5nQXVkaW87IH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQogICAgIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyJiBpZGJDb25uZWN0aW9uKCk7
CiAgICAgV0VCQ09SRV9FWFBPUlQgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXIqIG9w
dGlvbmFsSURCQ29ubmVjdGlvbigpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xlYXJJREJD
b25uZWN0aW9uKCk7Ci0jZW5kaWYKIAogICAgIHZvaWQgc2V0U2hvd0FsbFBsdWdpbnMoYm9vbCBz
aG93QWxsKSB7IG1fc2hvd0FsbFBsdWdpbnMgPSBzaG93QWxsOyB9CiAgICAgYm9vbCBzaG93QWxs
UGx1Z2lucygpIGNvbnN0OwpAQCAtMTAzMyw5ICsxMDMxLDcgQEAgcHJpdmF0ZToKICAgICBjb25z
dCBzdGQ6OnVuaXF1ZV9wdHI8UGFnZURlYnVnZ2FibGU+IG1faW5zcGVjdG9yRGVidWdnYWJsZTsK
ICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgUmVmUHRyPElEQkNs
aWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyPiBtX2lkYkNvbm5lY3Rpb25Ub1NlcnZlcjsKLSNl
bmRpZgogCiAgICAgSGFzaFNldDxTdHJpbmc+IG1fc2VlblBsdWdpbnM7CiAgICAgSGFzaFNldDxT
dHJpbmc+IG1fc2Vlbk1lZGlhRW5naW5lczsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA3LDYgKzEwNyw4IEBACiAjaW5jbHVkZSAi
SGlzdG9yeUNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJIaXN0b3J5SXRlbS5oIgogI2luY2x1ZGUg
IkhpdFRlc3RSZXN1bHQuaCIKKyNpbmNsdWRlICJJREJSZXF1ZXN0LmgiCisjaW5jbHVkZSAiSURC
VHJhbnNhY3Rpb24uaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnQuaCIKICNpbmNsdWRlICJJ
bnNwZWN0b3JDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yRGVidWdnYWJsZVR5cGUu
aCIKQEAgLTMwMywxMSArMzA1LDYgQEAKICNpbmNsdWRlICJQb2ludGVyTG9ja0NvbnRyb2xsZXIu
aCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0jaW5jbHVkZSAiSURC
UmVxdWVzdC5oIgotI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uLmgiCi0jZW5kaWYKLQogI2lmIFVT
RShRVUlDS19MT09LKQogI2luY2x1ZGUgIkxlZ2FjeVByZXZpZXdMb2FkZXIuaCIKICNpbmNsdWRl
ICJNb2NrUHJldmlld0xvYWRlckNsaWVudC5oIgpAQCAtMjYyOSwxMiArMjYyNiwxMCBAQCBFeGNl
cHRpb25Pcjx1bnNpZ25lZD4gSW50ZXJuYWxzOjpjb3VudEZpCiAgICAgcmV0dXJuIGRvY3VtZW50
LT5wYWdlKCktPmNvdW50RmluZE1hdGNoZXModGV4dCwgcGFyc2VkT3B0aW9ucy5yZWxlYXNlUmV0
dXJuVmFsdWUoKSwgMTAwMCk7CiB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIHVu
c2lnbmVkIEludGVybmFsczo6bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSBjb25zdAogewogICAg
IHJldHVybiBJREJUcmFuc2FjdGlvbjo6bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnM7CiB9Ci0jZW5k
aWYKIAogdW5zaWduZWQgSW50ZXJuYWxzOjpudW1iZXJPZkxpdmVOb2RlcygpIGNvbnN0CiB7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0OSw5
ICs0NDksNyBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gaW5zZXJ0QXV0aG9yQ1NT
KGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IGluc2VydFVzZXJD
U1MoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
ICAgICB1bnNpZ25lZCBudW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGNvbnN0OwotI2VuZGlmCiAK
ICAgICB1bnNpZ25lZCBudW1iZXJPZkxpdmVOb2RlcygpIGNvbnN0OwogICAgIHVuc2lnbmVkIG51
bWJlck9mTGl2ZURvY3VtZW50cygpIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC01MzMsNyArNTMzLDcgQEAgZW51bSBUcmVl
VHlwZSB7CiAgICAgdW5kZWZpbmVkIGJlZ2luU2ltdWxhdGVkTWVtb3J5UHJlc3N1cmUoKTsKICAg
ICB1bmRlZmluZWQgZW5kU2ltdWxhdGVkTWVtb3J5UHJlc3N1cmUoKTsKIAotICAgIFtDb25kaXRp
b25hbD1JTkRFWEVEX0RBVEFCQVNFXSB1bnNpZ25lZCBsb25nIG51bWJlck9mSURCVHJhbnNhY3Rp
b25zKCk7CisgICAgdW5zaWduZWQgbG9uZyBudW1iZXJPZklEQlRyYW5zYWN0aW9ucygpOwogCiAg
ICAgdW5zaWduZWQgbG9uZyBudW1iZXJPZkxpdmVOb2RlcygpOwogICAgIHVuc2lnbmVkIGxvbmcg
bnVtYmVyT2ZMaXZlRG9jdW1lbnRzKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckdsb2JhbFNjb3BlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckdsb2JhbFNjb3BlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY3LDkg
KzY3LDcgQEAgV29ya2VyR2xvYmFsU2NvcGU6Oldvcmtlckdsb2JhbFNjb3BlKFdvcgogICAgICwg
bV9pc09ubGluZShwYXJhbXMuaXNPbmxpbmUpCiAgICAgLCBtX3Nob3VsZEJ5cGFzc01haW5Xb3Js
ZENvbnRlbnRTZWN1cml0eVBvbGljeShwYXJhbXMuc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVu
dFNlY3VyaXR5UG9saWN5KQogICAgICwgbV90b3BPcmlnaW4oV1RGTW92ZSh0b3BPcmlnaW4pKQot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgICwgbV9jb25uZWN0aW9uUHJveHkoY29u
bmVjdGlvblByb3h5KQotI2VuZGlmCiAgICAgLCBtX3NvY2tldFByb3ZpZGVyKHNvY2tldFByb3Zp
ZGVyKQogICAgICwgbV9wZXJmb3JtYW5jZShQZXJmb3JtYW5jZTo6Y3JlYXRlKHRoaXMsIHBhcmFt
cy50aW1lT3JpZ2luKSkKICAgICAsIG1fcmVmZXJyZXJQb2xpY3kocGFyYW1zLnJlZmVycmVyUG9s
aWN5KQpAQCAtNzcsMTAgKzc1LDYgQEAgV29ya2VyR2xvYmFsU2NvcGU6Oldvcmtlckdsb2JhbFNj
b3BlKFdvcgogICAgICwgbV93b3JrZXJUeXBlKHBhcmFtcy53b3JrZXJUeXBlKQogICAgICwgbV9j
cmVkZW50aWFscyhwYXJhbXMuY3JlZGVudGlhbHMpCiB7Ci0jaWYgIUVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQotICAgIFVOVVNFRF9QQVJBTShjb25uZWN0aW9uUHJveHkpOwotI2VuZGlmCi0KICAg
ICBpZiAobV90b3BPcmlnaW4tPmhhc1VuaXZlcnNhbEFjY2VzcygpKQogICAgICAgICBvcmlnaW4t
PmdyYW50VW5pdmVyc2FsQWNjZXNzKCk7CiAgICAgaWYgKG1fdG9wT3JpZ2luLT5uZWVkc1N0b3Jh
Z2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyaygpKQpAQCAtMTEzLDkgKzEwNyw3IEBAIHZvaWQgV29y
a2VyR2xvYmFsU2NvcGU6OnByZXBhcmVGb3JEZXN0cnUKIHsKICAgICBXb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZTo6cHJlcGFyZUZvckRlc3RydWN0aW9uKCk7CiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICBzdG9wSW5kZXhlZERhdGFiYXNlKCk7Ci0jZW5kaWYKIAogICAgIGlm
IChtX2NhY2hlU3RvcmFnZUNvbm5lY3Rpb24pCiAgICAgICAgIG1fY2FjaGVTdG9yYWdlQ29ubmVj
dGlvbi0+Y2xlYXJQZW5kaW5nUmVxdWVzdHMoKTsKQEAgLTE3Miw0MyArMTY0LDI5IEBAIFJlZlB0
cjxSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWMKICAgICByZXR1cm4gY29ubmVjdGlv
bjsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBJREJDbGllbnQ6OklEQkNv
bm5lY3Rpb25Qcm94eSogV29ya2VyR2xvYmFsU2NvcGU6OmlkYkNvbm5lY3Rpb25Qcm94eSgpCiB7
Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKICAgICByZXR1cm4gbV9j
b25uZWN0aW9uUHJveHkuZ2V0KCk7Ci0jZWxzZQotICAgIHJldHVybiBudWxscHRyOwotI2VuZGlm
CiB9CiAKIHZvaWQgV29ya2VyR2xvYmFsU2NvcGU6OnN0b3BJbmRleGVkRGF0YWJhc2UoKQogewot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCiAgICAgaWYgKG1fY29ubmVj
dGlvblByb3h5KQogICAgICAgICBtX2Nvbm5lY3Rpb25Qcm94eS0+Zm9yZ2V0QWN0aXZpdHlGb3JD
dXJyZW50VGhyZWFkKCk7Ci0jZW5kaWYKIH0KIAogdm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6c3Vz
cGVuZCgpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKICAgICBp
ZiAobV9jb25uZWN0aW9uUHJveHkpCiAgICAgICAgIG1fY29ubmVjdGlvblByb3h5LT5zZXRDb250
ZXh0U3VzcGVuZGVkKCp0aGlzLCB0cnVlKTsKLSNlbmRpZgogfQogCiB2b2lkIFdvcmtlckdsb2Jh
bFNjb3BlOjpyZXN1bWUoKQogewotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktF
UlMpCiAgICAgaWYgKG1fY29ubmVjdGlvblByb3h5KQogICAgICAgICBtX2Nvbm5lY3Rpb25Qcm94
eS0+c2V0Q29udGV4dFN1c3BlbmRlZCgqdGhpcywgZmFsc2UpOwotI2VuZGlmCiB9CiAKLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogV29ya2VyTG9jYXRpb24mIFdvcmtlckds
b2JhbFNjb3BlOjpsb2NhdGlvbigpIGNvbnN0CiB7CiAgICAgaWYgKCFtX2xvY2F0aW9uKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC02OCwxMSArNjgsOSBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIG9yaWdp
bigpIGNvbnN0OwogICAgIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJu
IG1faWRlbnRpZmllcjsgfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgSURC
Q2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSgpIGZpbmFsOwog
ICAgIHZvaWQgc3VzcGVuZCgpIGZpbmFsOwogICAgIHZvaWQgcmVzdW1lKCkgZmluYWw7Ci0jZW5k
aWYKIAogICAgIFdvcmtlckNhY2hlU3RvcmFnZUNvbm5lY3Rpb24mIGNhY2hlU3RvcmFnZUNvbm5l
Y3Rpb24oKTsKICAgICBNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlciYgbWVzc2FnZVBvcnRDaGFu
bmVsUHJvdmlkZXIoKTsKQEAgLTE1NSw5ICsxNTMsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgdW53
cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSwgVmVjdG9yPHVp
bnQ4X3Q+JiBrZXkpIGZpbmFsOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKICAgICB2b2lkIHN0b3BJbmRleGVkRGF0YWJhc2UoKTsKLSNlbmRpZgogCiAgICAgVVJMIG1f
dXJsOwogICAgIFN0cmluZyBtX2lkZW50aWZpZXI7CkBAIC0xNzEsOSArMTY3LDcgQEAgcHJpdmF0
ZToKIAogICAgIFJlZjxTZWN1cml0eU9yaWdpbj4gbV90b3BPcmlnaW47CiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKICAgICBSZWZQdHI8SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJv
eHk+IG1fY29ubmVjdGlvblByb3h5OwotI2VuZGlmCiAKICAgICBSZWZQdHI8U29ja2V0UHJvdmlk
ZXI+IG1fc29ja2V0UHJvdmlkZXI7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyTWVzc2FnaW5nUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyTWVzc2FnaW5nUHJveHkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtODMsMTEgKzgzLDcgQEAgdm9pZCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3JrZXJH
bAogICAgIFdvcmtlclRocmVhZFN0YXJ0TW9kZSBzdGFydE1vZGUgPSBtX2luc3BlY3RvclByb3h5
LT53b3JrZXJTdGFydE1vZGUoKm1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC5nZXQoKSk7CiAgICAg
U3RyaW5nIGlkZW50aWZpZXIgPSBtX2luc3BlY3RvclByb3h5LT5pZGVudGlmaWVyKCk7CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Q
cm94eSogcHJveHkgPSBkb2N1bWVudC5pZGJDb25uZWN0aW9uUHJveHkoKTsKLSNlbHNlCi0gICAg
SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIHByb3h5ID0gbnVsbHB0cjsKLSNlbmRpZgog
CiAgICAgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyID0gZG9jdW1lbnQuc29ja2V0UHJv
dmlkZXIoKTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmNwcAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSwxNCArOTEsOSBAQCBXb3JrZXJUaHJlYWQ6Oldvcmtl
clRocmVhZChjb25zdCBXb3JrZXJQCiAgICAgLCBtX3dvcmtlclJlcG9ydGluZ1Byb3h5KHdvcmtl
clJlcG9ydGluZ1Byb3h5KQogICAgICwgbV9ydW50aW1lRmxhZ3MocnVudGltZUZsYWdzKQogICAg
ICwgbV9zdGFydHVwRGF0YShtYWtlVW5pcXVlPFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhPihwYXJh
bXMsIHNvdXJjZUNvZGUsIHN0YXJ0TW9kZSwgdG9wT3JpZ2luKSkKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICAsIG1faWRiQ29ubmVjdGlvblByb3h5KGNvbm5lY3Rpb25Qcm94eSkK
LSNlbmRpZgogICAgICwgbV9zb2NrZXRQcm92aWRlcihzb2NrZXRQcm92aWRlcikKIHsKLSNpZiAh
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0gICAgVU5VU0VEX1BBUkFNKGNvbm5lY3Rpb25Qcm94
eSk7Ci0jZW5kaWYKICAgICArK3dvcmtlclRocmVhZENvdW50ZXI7CiB9CiAKQEAgLTE1OSwxMSAr
MTU0LDcgQEAgdm9pZCBXb3JrZXJUaHJlYWQ6OmV2YWx1YXRlU2NyaXB0SWZOZWNlcwogCiBJREJD
bGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogV29ya2VyVGhyZWFkOjppZGJDb25uZWN0aW9uUHJv
eHkoKQogewotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHJldHVybiBtX2lkYkNv
bm5lY3Rpb25Qcm94eS5nZXQoKTsKLSNlbHNlCi0gICAgcmV0dXJuIG51bGxwdHI7Ci0jZW5kaWYK
IH0KIAogU29ja2V0UHJvdmlkZXIqIFdvcmtlclRocmVhZDo6c29ja2V0UHJvdmlkZXIoKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xMjQsOSArMTI0LDcgQEAgcHJpdmF0ZToKICAgICBOb3RpZmljYXRpb25DbGllbnQqIG1fbm90
aWZpY2F0aW9uQ2xpZW50IHsgbnVsbHB0ciB9OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICBSZWZQdHI8SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHk+IG1f
aWRiQ29ubmVjdGlvblByb3h5OwotI2VuZGlmCiAgICAgUmVmUHRyPFNvY2tldFByb3ZpZGVyPiBt
X3NvY2tldFByb3ZpZGVyOwogfTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFk
UHJveHkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC04MywxMSArODMsNyBAQCBzdGF0aWMgaW5saW5lIFVuaXF1ZVJlZjxQYWdlPiBjcmVhdGVQ
YWdlCiAKIHN0YXRpYyBpbmxpbmUgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNv
bm5lY3Rpb25Qcm94eShEb2N1bWVudCYgZG9jdW1lbnQpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCiAgICAgcmV0dXJuIGRvY3VtZW50LmlkYkNvbm5lY3Rpb25Qcm94eSgpOwotI2Vs
c2UKLSAgICByZXR1cm4gbnVsbHB0cjsKLSNlbmRpZgogfQogCiBzdGF0aWMgSGFzaFNldDxTZXJ2
aWNlV29ya2VyVGhyZWFkUHJveHkqPiYgYWxsU2VydmljZVdvcmtlclRocmVhZFByb3hpZXMoKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvd29ya2xldHMvV29ya2xldEdsb2JhbFNjb3BlLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvd29ya2xldHMvV29ya2xldEdsb2JhbFNjb3BlLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL3dvcmtsZXRzL1dvcmtsZXRHbG9iYWxT
Y29wZS5oCSh3b3JraW5nIGNvcHkpCkBAIC05Nyw5ICs5Nyw3IEBAIHByb3RlY3RlZDoKICAgICBX
b3JrbGV0R2xvYmFsU2NvcGUoRG9jdW1lbnQmLCBSZWY8SlNDOjpWTT4mJiwgU2NyaXB0U291cmNl
Q29kZSYmKTsKIAogcHJpdmF0ZToKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJ
REJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogaWRiQ29ubmVjdGlvblByb3h5KCkgZmluYWwg
eyBBU1NFUlRfTk9UX1JFQUNIRUQoKTsgcmV0dXJuIG51bGxwdHI7IH0KLSNlbmRpZgogCiAgICAg
Ly8gRXZlbnRUYXJnZXQuCiAgICAgRXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRl
cmZhY2UoKSBjb25zdCBmaW5hbCB7IHJldHVybiBXb3JrbGV0R2xvYmFsU2NvcGVFdmVudFRhcmdl
dEludGVyZmFjZVR5cGU7IH0KSW5kZXg6IFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxl
LmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBh
bGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC4wLmpzb246CisgICAgICAgICogVmVyc2lvbnMv
SW5zcGVjdG9yLWlPUy0xNC41Lmpzb246CisgICAgICAgIFVwZGF0ZSBmb3IgcmVtb3ZlZCBFTkFC
TEVfSU5ERVhFRF9EQVRBQkFTRSBjb25kaXRpb25hbC4KKwogMjAyMS0wMy0yNiAgSmVzc2llIEJl
cmxpbiAgPGpiZXJsaW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGUgdGhlIEJFRk9SRS9T
SU5DRSwgU1lTVEVNX1ZFUlNJT05fUFJFRklYLCBhbmQgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VU
IGZsYWdzCkluZGV4OiBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlP
Uy0xNC4wLmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL1ZlcnNpb25z
L0luc3BlY3Rvci1pT1MtMTQuMC5qc29uCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC4wLmpzb24JKHdvcmtpbmcgY29w
eSkKQEAgLTI3MjgsNyArMjcyOCw2IEBACiAsCiB7CiAgICAgImRvbWFpbiI6ICJJbmRleGVkREIi
LAotICAgICJjb25kaXRpb24iOiAiZGVmaW5lZChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJiYg
RU5BQkxFX0lOREVYRURfREFUQUJBU0UiLAogICAgICJkZWJ1Z2dhYmxlVHlwZXMiOiBbInBhZ2Ui
LCAid2ViLXBhZ2UiXSwKICAgICAidGFyZ2V0VHlwZXMiOiBbInBhZ2UiXSwKICAgICAidHlwZXMi
OiBbCkluZGV4OiBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0x
NC41Lmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL1ZlcnNpb25zL0lu
c3BlY3Rvci1pT1MtMTQuNS5qc29uCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC41Lmpzb24JKHdvcmtpbmcgY29weSkK
QEAgLTI3NjgsNyArMjc2OCw2IEBACiAsCiB7CiAgICAgImRvbWFpbiI6ICJJbmRleGVkREIiLAot
ICAgICJjb25kaXRpb24iOiAiZGVmaW5lZChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJiYgRU5B
QkxFX0lOREVYRURfREFUQUJBU0UiLAogICAgICJkZWJ1Z2dhYmxlVHlwZXMiOiBbInBhZ2UiLCAi
d2ViLXBhZ2UiXSwKICAgICAidGFyZ2V0VHlwZXMiOiBbInBhZ2UiXSwKICAgICAidHlwZXMiOiBb
CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw2NiBAQAorMjAyMS0wMy0yNiAgU2FtIFdlaW5p
ZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywgaXQgc2VlbXMgbGlr
ZSBpdCBpcyBvbiBmb3IgYWxsIHBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjM4MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGNvbmRpdGlvbmFscy4KKworICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQu
aDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmNwcDoK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmg6CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5tZXNzYWdlcy5pbjoK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHA6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpjcmVhdGVOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjphZGRXZWJzaXRlRGF0YVN0b3Jl
KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmRlc3Ryb3lTZXNzaW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmZldGNoV2Vic2l0ZURhdGEpOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGEpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGFGb3JPcmlnaW5zKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmRlbGV0ZUFuZFJlc3RyaWN0V2Vic2l0ZURh
dGFGb3JSZWdpc3RyYWJsZURvbWFpbnMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vz
czo6cmVnaXN0cmFibGVEb21haW5zV2l0aFdlYnNpdGVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1c3BlbmQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrUHJvY2Vzczo6cmVzdW1lKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnJl
bmFtZU9yaWdpbkluV2Vic2l0ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vz
czo6c3RvcmFnZVF1b3RhTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNz
Ojpjb25uZWN0aW9uVG9XZWJQcm9jZXNzQ2xvc2VkKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6U2Vz
c2lvblN0b3JhZ2VRdW90YU1hbmFnZXI6OmlkYlJvb3RQYXRoIGNvbnN0KToKKyAgICAgICAgKiBT
aGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9JREJVdGlsaXRpZXMuY3BwOgorICAgICAgICAqIFNo
YXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5oOgorICAgICAgICAqIFNoYXJl
ZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlJlc3VsdC5jcHA6CisgICAgICAgICogU2hhcmVk
L0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0Lmg6CisgICAgICAgICogU2hhcmVkL1dl
YkNvcmVBcmd1bWVudENvZGVycy5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8SURC
S2V5UGF0aD46OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5oOgorICAgICAgICAqIFNoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzOjplbmNvZGUgY29uc3Qp
OgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVyczo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuaDoKKyAgICAgICAg
KiBVSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6YWRkU2Vzc2lvbik6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtQcm9jZXNzUHJveHk6OmNyZWF0ZVN5bUxpbmtGb3JGaWxlVXBncmFkZSk6CisgICAg
ICAgICogVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHA6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1Nl
cnZlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJD
b25uZWN0aW9uVG9TZXJ2ZXIubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRh
YmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkRhdGFi
YXNlUHJvdmlkZXI6OmlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24pOgorICAgICAgICAq
IFdlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRSZWNlaXZlTWVzc2FnZSk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkQ2xvc2UpOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmlkYkNvbm5lY3Rpb25Ub1Nl
cnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2Vy
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ29udGV4dE1hbmFnZXJDb25u
ZWN0aW9uOjppbnN0YWxsU2VydmljZVdvcmtlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6bmV0d29ya1Byb2Nlc3ND
b25uZWN0aW9uQ2xvc2VkKToKKwogMjAyMS0wMy0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hz
aWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgUFVJQ1F1aWNrYm9hcmRDb250cm9sbGVyIGZv
ciB0ZXh0IGlucHV0IHdoZW4gSEFWRShRVUlDS0JPQVJEX0NPTlRST0xMRVIpIGlzIGRlZmluZWQK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3Mu
Y3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzkyLDkgKzM5Miw3IEBAIHZvaWQg
TmV0d29ya1Byb2Nlc3M6OmNyZWF0ZU5ldHdvcmtDb25uZWMKIAogICAgIG1fc3RvcmFnZU1hbmFn
ZXJTZXQtPmFkZENvbm5lY3Rpb24oY29ubmVjdGlvbi5jb25uZWN0aW9uKCkpOwogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgd2ViSURCU2VydmVyKHNlc3Npb25JRCkuYWRkQ29u
bmVjdGlvbihjb25uZWN0aW9uLmNvbm5lY3Rpb24oKSwgaWRlbnRpZmllcik7Ci0jZW5kaWYKIH0K
IAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6Y2xlYXJDYWNoZWRDcmVkZW50aWFscyhQQUw6OlNlc3Np
b25JRCBzZXNzaW9uSUQpCkBAIC00MTIsOSArNDEwLDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6
YWRkV2Vic2l0ZURhdGFTdG9yZQogCiAgICAgYWRkU2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXIo
c2Vzc2lvbklELCBwYXJhbWV0ZXJzLnBlck9yaWdpblN0b3JhZ2VRdW90YSwgcGFyYW1ldGVycy5w
ZXJUaGlyZFBhcnR5T3JpZ2luU3RvcmFnZVF1b3RhLCBwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURp
cmVjdG9yeSwgcGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUp
OwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgYWRkSW5kZXhlZERhdGFiYXNl
U2Vzc2lvbihzZXNzaW9uSUQsIHBhcmFtZXRlcnMuaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5LCBw
YXJhbWV0ZXJzLmluZGV4ZWREYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7Ci0jZW5k
aWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBhZGRTZXJ2aWNlV29ya2VyU2Vz
c2lvbihzZXNzaW9uSUQsIHBhcmFtZXRlcnMuc2VydmljZVdvcmtlclByb2Nlc3NUZXJtaW5hdGlv
bkRlbGF5RW5hYmxlZCwgV1RGTW92ZShwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25EaXJlY3RvcnkpLCBwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rv
cnlFeHRlbnNpb25IYW5kbGUpOwpAQCAtNTU3LDkgKzU1Myw3IEBAIHZvaWQgTmV0d29ya1Byb2Nl
c3M6OmRlc3Ryb3lTZXNzaW9uKFBBTDoKIAogICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQtPnJlbW92
ZShzZXNzaW9uSUQpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgcmVtb3Zl
V2ViSURCU2VydmVySWZQb3NzaWJsZShzZXNzaW9uSUQpOwotI2VuZGlmCiB9CiAKICNpZiBFTkFC
TEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQpAQCAtMTUxMiw3ICsxNTA2LDYgQEAgdm9pZCBO
ZXR3b3JrUHJvY2Vzczo6ZmV0Y2hXZWJzaXRlRGF0YShQQQogICAgICAgICBjYWxsYmFja0FnZ3Jl
Z2F0b3ItPm1fd2Vic2l0ZURhdGEuaG9zdE5hbWVzV2l0aEhTVFNDYWNoZSA9IGhvc3ROYW1lc1dp
dGhIU1RTQ2FjaGUoc2Vzc2lvbklEKTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCiAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQp
OwogICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhX
ZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKICAgICAgICAgd2ViSURCU2Vy
dmVyKHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvJiYgb3Jp
Z2lucykgewpAQCAtMTUyMCw3ICsxNTEzLDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZmV0Y2hX
ZWJzaXRlRGF0YShQQQogICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJz
aXRlRGF0YS5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbnMudGFrZUFueSgpLCBXZWJzaXRlRGF0YVR5
cGU6OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKICAgICAgICAgfSk7CiAgICAgfQotI2VuZGlm
CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgcGF0aCA9IG1fc2VydmljZVdvcmtl
ckluZm8uZ2V0KHNlc3Npb25JRCkuZGF0YWJhc2VQYXRoOwpAQCAtMTU5MywxMCArMTU4NSw4IEBA
IHZvaWQgTmV0d29ya1Byb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRhKFAKICAgICBpZiAod2Vic2l0
ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkxvY2FsU3RvcmFnZSkgJiYgbV9z
dG9yYWdlTWFuYWdlclNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkKICAgICAgICAgbV9zdG9yYWdl
TWFuYWdlclNldC0+ZGVsZXRlTG9jYWxTdG9yYWdlTW9kaWZpZWRTaW5jZShzZXNzaW9uSUQsIG1v
ZGlmaWVkU2luY2UsIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzKSAmJiAhc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkp
CiAgICAgICAgIHdlYklEQlNlcnZlcihzZXNzaW9uSUQpLmNsb3NlQW5kRGVsZXRlRGF0YWJhc2Vz
TW9kaWZpZWRTaW5jZShtb2RpZmllZFNpbmNlLCBbY2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBib29sIGNsZWFyU2Vydmlj
ZVdvcmtlcnMgPSB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RE9N
Q2FjaGUpIHx8IHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpTZXJ2
aWNlV29ya2VyUmVnaXN0cmF0aW9ucyk7CkBAIC0xNzA3LDEwICsxNjk3LDggQEAgdm9pZCBOZXR3
b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGFGbwogICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVz
LmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6TG9jYWxTdG9yYWdlKSAmJiBtX3N0b3JhZ2VNYW5h
Z2VyU2V0LT5jb250YWlucyhzZXNzaW9uSUQpKQogICAgICAgICBtX3N0b3JhZ2VNYW5hZ2VyU2V0
LT5kZWxldGVMb2NhbFN0b3JhZ2VGb3JPcmlnaW5zKHNlc3Npb25JRCwgb3JpZ2luRGF0YXMsIFtj
bGVhclRhc2tzSGFuZGxlcl0geyB9KTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQog
ICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhl
ZERCRGF0YWJhc2VzKSAmJiAhc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpCiAgICAgICAgIHdlYklE
QlNlcnZlcihzZXNzaW9uSUQpLmNsb3NlQW5kRGVsZXRlRGF0YWJhc2VzRm9yT3JpZ2lucyhvcmln
aW5EYXRhcywgW2NsZWFyVGFza3NIYW5kbGVyXSB7IH0pOwotI2VuZGlmCiAKICNpZiBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCiAgICAgYm9vbCBjbGVhclNlcnZpY2VXb3JrZXJzID0gd2Vic2l0ZURh
dGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkRPTUNhY2hlKSB8fCB3ZWJzaXRlRGF0
YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bnMpOwpAQCAtMTkwOSw3ICsxODk3LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlQW5k
UmVzdHJpY3RXZQogICAgICAgICB9CiAgICAgfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwog
ICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJz
aXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKICAgICAgICAgd2ViSURCU2VydmVy
KHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRo
aXMpLCBzZXNzaW9uSUQsIGNhbGxiYWNrQWdncmVnYXRvciwgZG9tYWluc1RvRGVsZXRlQWxsTm9u
Q29va2llV2Vic2l0ZURhdGFGb3JdKGF1dG8mJiBvcmlnaW5zKSB7CkBAIC0xOTIwLDcgKzE5MDcs
NiBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpkZWxldGVBbmRSZXN0cmljdFdlCiAgICAgICAgICAg
ICB3ZWJJREJTZXJ2ZXIoc2Vzc2lvbklEKS5jbG9zZUFuZERlbGV0ZURhdGFiYXNlc0Zvck9yaWdp
bnMob3JpZ2luc1RvRGVsZXRlLCBbY2FsbGJhY2tBZ2dyZWdhdG9yXSB7IH0pOwogICAgICAgICB9
KTsKICAgICB9Ci0jZW5kaWYKICAgICAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAg
cGF0aCA9IG1fc2VydmljZVdvcmtlckluZm8uZ2V0KHNlc3Npb25JRCkuZGF0YWJhc2VQYXRoOwpA
QCAtMjA0Niw3ICsyMDMyLDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVnaXN0cmFibGVEb21h
aW5zVwogICAgICAgICB9KTsKICAgICB9CiAgICAgCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwog
ICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJz
aXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKICAgICAgICAgd2ViSURCU2VydmVy
KHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvJiYgb3JpZ2lu
cykgewpAQCAtMjA1NCw3ICsyMDM5LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVnaXN0cmFi
bGVEb21haW5zVwogICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRl
RGF0YS5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbnMudGFrZUFueSgpLCBXZWJzaXRlRGF0YVR5cGU6
OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKICAgICAgICAgfSk7CiAgICAgfQotI2VuZGlmCiAg
ICAgCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIHBhdGggPSBtX3NlcnZpY2VXb3Jr
ZXJJbmZvLmdldChzZXNzaW9uSUQpLmRhdGFiYXNlUGF0aDsKQEAgLTIyMTcsNyArMjIwMSw3IEBA
IHZvaWQgTmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1c3BlbmQoYm8KIHsKICAgICBSRUxFQVNF
X0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gTmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1
c3BlbmQoKSwgaXNTdXNwZW5zaW9uSW1taW5lbnQ9JWQiLCB0aGlzLCBpc1N1c3BlbnNpb25JbW1p
bmVudCk7CiAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSAmJiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGZvciAoYXV0byYgc2VydmVyIDog
bV93ZWJJREJTZXJ2ZXJzLnZhbHVlcygpKQogICAgICAgICBzZXJ2ZXItPnN1c3BlbmQoKTsKICNl
bmRpZgpAQCAtMjI4Nyw3ICsyMjcxLDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVzdW1lKCkK
ICAgICBmb3IgKGF1dG8mIHNlcnZlciA6IG1fc3dTZXJ2ZXJzLnZhbHVlcygpKQogICAgICAgICBz
ZXJ2ZXItPmVuZFN1c3BlbnNpb24oKTsKICNlbmRpZgotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
ICYmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAg
ICAgZm9yIChhdXRvJiBzZXJ2ZXIgOiBtX3dlYklEQlNlcnZlcnMudmFsdWVzKCkpCiAgICAgICAg
IHNlcnZlci0+cmVzdW1lKCk7CiAjZW5kaWYKQEAgLTIzNDEsNyArMjMyNSw2IEBAIHZvaWQgTmV0
d29ya1Byb2Nlc3M6OnJlZ2lzdGVyVVJMU2NoZW1lQXMKICAgICBMZWdhY3lTY2hlbWVSZWdpc3Ry
eTo6cmVnaXN0ZXJVUkxTY2hlbWVBc05vQWNjZXNzKHNjaGVtZSk7CiB9CiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKIFJlZjxXZWJJREJTZXJ2ZXI+IE5ldHdvcmtQcm9jZXNzOjpjcmVh
dGVXZWJJREJTZXJ2ZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogewogICAgIFN0cmluZyBw
YXRoOwpAQCAtMjQwMSw4ICsyMzg0LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVtb3ZlV2Vi
SURCU2VydmVySQogICAgIG1fd2ViSURCU2VydmVycy5yZW1vdmUoaXRlcmF0b3IpOwogfQogCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIHZvaWQgTmV0d29ya1Byb2Nlc3M6
OnN5bmNMb2NhbFN0b3JhZ2UoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQogewogICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQtPndhaXRVbnRpbFN5bmNpbmdMb2Nh
bFN0b3JhZ2VGaW5pc2hlZCgpOwpAQCAtMjQ0NywxMyArMjQyOCwxMSBAQCB2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpyZW5hbWVPcmlnaW5JbldlYnNpCiAgICAgICAgICAgICBtX3N0b3JhZ2VNYW5hZ2Vy
U2V0LT5yZW5hbWVPcmlnaW4oc2Vzc2lvbklELCBvbGROYW1lLCBuZXdOYW1lLCBbYWdncmVnYXRv
cl0geyB9KTsKICAgICB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBpZiAo
ZGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzKSkg
ewogICAgICAgICBhdXRvIHBhdGggPSBtX2lkYkRhdGFiYXNlUGF0aHMuZ2V0KHNlc3Npb25JRCk7
CiAgICAgICAgIGlmICghcGF0aC5pc0VtcHR5KCkpCiAgICAgICAgICAgICB3ZWJJREJTZXJ2ZXIo
c2Vzc2lvbklEKS5yZW5hbWVPcmlnaW4ob2xkT3JpZ2luLCBuZXdPcmlnaW4sIFthZ2dyZWdhdG9y
XSB7IH0pOwogICAgIH0KLSNlbmRpZgogfQogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpA
QCAtMjUzNywxOSArMjUxNiwxMyBAQCBSZWZQdHI8U3RvcmFnZVF1b3RhTWFuYWdlcj4gTmV0d29y
a1Byb2NlCiAgICAgaWYgKCFzZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcikKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAKLSAgICBTdHJpbmcgaWRiUm9vdFBhdGg7Ci0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0gICAgaWRiUm9vdFBhdGggPSBzZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdl
ci0+aWRiUm9vdFBhdGgoKTsKLSNlbmRpZgorICAgIFN0cmluZyBpZGJSb290UGF0aCA9IHNlc3Np
b25TdG9yYWdlUXVvdGFNYW5hZ2VyLT5pZGJSb290UGF0aCgpOwogICAgIFN0b3JhZ2VRdW90YU1h
bmFnZXI6OlVzYWdlR2V0dGVyIHVzYWdlR2V0dGVyID0gW2NhY2hlUm9vdFBhdGggPSBzZXNzaW9u
U3RvcmFnZVF1b3RhTWFuYWdlci0+Y2FjaGVSb290UGF0aCgpLmlzb2xhdGVkQ29weSgpLCBpZGJS
b290UGF0aCA9IGlkYlJvb3RQYXRoLmlzb2xhdGVkQ29weSgpLCBvcmlnaW4gPSBvcmlnaW4uaXNv
bGF0ZWRDb3B5KCldKFN0b3JhZ2VRdW90YU1hbmFnZXI6OlNob3VsZFByaW50VXNhZ2VEZXRhaWwg
c2hvdWxkUHJpbnR1c2FnZURldGFpbCkgewogICAgICAgICBBU1NFUlQoIWlzTWFpblJ1bkxvb3Ao
KSk7CiAKICAgICAgICAgdWludDY0X3QgY2FjaGVVc2FnZSA9IENhY2hlU3RvcmFnZTo6RW5naW5l
OjpkaXNrVXNhZ2UoY2FjaGVSb290UGF0aCwgb3JpZ2luKTsKLSAgICAgICAgdWludDY0X3QgdXNh
Z2UgPSBjYWNoZVVzYWdlOworICAgICAgICB1aW50NjRfdCB1c2FnZSA9IGNhY2hlVXNhZ2UgKyBJ
REJTZXJ2ZXI6OklEQlNlcnZlcjo6ZGlza1VzYWdlKGlkYlJvb3RQYXRoLCBvcmlnaW4pOwogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0gICAgICAgIHVzYWdlICs9IElEQlNlcnZlcjo6
SURCU2VydmVyOjpkaXNrVXNhZ2UoaWRiUm9vdFBhdGgsIG9yaWdpbik7Ci0jZW5kaWYKICAgICAg
ICAgaWYgKHNob3VsZFByaW50dXNhZ2VEZXRhaWwgPT0gU3RvcmFnZVF1b3RhTWFuYWdlcjo6U2hv
dWxkUHJpbnRVc2FnZURldGFpbDo6WWVzKQogICAgICAgICAgICAgV1RGTG9nQWx3YXlzKCJTdG9y
YWdlUXVvdGFNYW5hZ2VyOjpVc2FnZUdldHRlciBDYWNoZSB1c2FnZSAlIiBQUkl1NjQgIiwgSURC
IHVzYWdlICUiIFBSSXU2NCwgY2FjaGVVc2FnZSwgdXNhZ2UpOwogCkBAIC0yNzE4LDEyICsyNjkx
LDEwIEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmNvbm5lY3Rpb25Ub1dlYlByb2MKIHsKICAgICBt
X3N0b3JhZ2VNYW5hZ2VyU2V0LT5yZW1vdmVDb25uZWN0aW9uKGNvbm5lY3Rpb24pOwogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgYXV0byogd2ViSURCU2VydmVyID0gbV93ZWJJ
REJTZXJ2ZXJzLmdldChzZXNzaW9uSUQpOwogICAgIEFTU0VSVCh3ZWJJREJTZXJ2ZXIpOwogICAg
IHdlYklEQlNlcnZlci0+cmVtb3ZlQ29ubmVjdGlvbihjb25uZWN0aW9uKTsKICAgICByZW1vdmVX
ZWJJREJTZXJ2ZXJJZlBvc3NpYmxlKHNlc3Npb25JRCk7Ci0jZW5kaWYKIH0KIAogTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MqIE5ldHdvcmtQcm9jZXNzOjp3ZWJQcm9jZXNzQ29ubmVjdGlv
bihQcm9jZXNzSWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdApJbmRleDogU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAkocmV2aXNpb24gMjc1MTIzKQor
KysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yOTgsOSArMjk4LDcgQEAgcHVibGljOgogICAgIE5ldHdvcmtDb250ZW50UnVs
ZUxpc3RNYW5hZ2VyJiBuZXR3b3JrQ29udGVudFJ1bGVMaXN0TWFuYWdlcigpIHsgcmV0dXJuIG1f
bmV0d29ya0NvbnRlbnRSdWxlTGlzdE1hbmFnZXI7IH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCiAgICAgV2ViSURCU2VydmVyJiB3ZWJJREJTZXJ2ZXIoUEFMOjpTZXNz
aW9uSUQpOwotI2VuZGlmCiAKICAgICB2b2lkIHN5bmNMb2NhbFN0b3JhZ2UoQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKIApAQCAtNDc3LDEyICs0NzUsMTAgQEAgcHJpdmF0ZToKICAgICB2
b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNOb0FjY2Vzcyhjb25zdCBTdHJpbmcmKSBjb25zdDsKICAg
ICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNDT1JTRW5hYmxlZChjb25zdCBTdHJpbmcmKSBjb25z
dDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZvaWQgYWRkSW5kZXhlZERh
dGFiYXNlU2Vzc2lvbihQQUw6OlNlc3Npb25JRCwgU3RyaW5nJiwgU2FuZGJveEV4dGVuc2lvbjo6
SGFuZGxlJik7CiAgICAgUmVmPFdlYklEQlNlcnZlcj4gY3JlYXRlV2ViSURCU2VydmVyKFBBTDo6
U2Vzc2lvbklEKTsKICAgICB2b2lkIHNldFNlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VySURCUm9v
dFBhdGgoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgaWRiUm9vdFBhdGgpOwogICAgIHZv
aWQgcmVtb3ZlV2ViSURCU2VydmVySWZQb3NzaWJsZShQQUw6OlNlc3Npb25JRCk7Ci0jZW5kaWYK
IAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICB2b2lkIGRpZENyZWF0ZVdvcmtlckNv
bnRleHRQcm9jZXNzQ29ubmVjdGlvbihjb25zdCBJUEM6OkF0dGFjaG1lbnQmKTsKQEAgLTUyMCwx
NiArNTE2LDEzIEBAIHByaXZhdGU6CiAgICAgICAgIGF1dG8gZXhpc3RpbmdTdG9yYWdlUXVvdGFN
YW5hZ2VycygpIHsgcmV0dXJuIG1fc3RvcmFnZVF1b3RhTWFuYWdlcnMudmFsdWVzKCk7IH0KIAog
ICAgICAgICBjb25zdCBTdHJpbmcmIGNhY2hlUm9vdFBhdGgoKSBjb25zdCB7IHJldHVybiBtX2Nh
Y2hlUm9vdFBhdGg7IH0KLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKKwogICAgICAgICB2
b2lkIHNldElEQlJvb3RQYXRoKGNvbnN0IFN0cmluZyYgaWRiUm9vdFBhdGgpIHsgbV9pZGJSb290
UGF0aCA9IGlkYlJvb3RQYXRoOyB9CiAgICAgICAgIGNvbnN0IFN0cmluZyYgaWRiUm9vdFBhdGgo
KSBjb25zdCB7IHJldHVybiBtX2lkYlJvb3RQYXRoOyB9Ci0jZW5kaWYKIAogICAgIHByaXZhdGU6
CiAgICAgICAgIFN0cmluZyBtX2NhY2hlUm9vdFBhdGg7Ci0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCiAgICAgICAgIFN0cmluZyBtX2lkYlJvb3RQYXRoOwotI2VuZGlmCiAgICAgICAgIHVp
bnQ2NF90IG1fZGVmYXVsdFF1b3RhIHsgV2ViQ29yZTo6U3RvcmFnZVF1b3RhTWFuYWdlcjo6ZGVm
YXVsdFF1b3RhKCkgfTsKICAgICAgICAgdWludDY0X3QgbV9kZWZhdWx0VGhpcmRQYXJ0eVF1b3Rh
IHsgV2ViQ29yZTo6U3RvcmFnZVF1b3RhTWFuYWdlcjo6ZGVmYXVsdFRoaXJkUGFydHlRdW90YSgp
IH07CiAgICAgICAgIEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBSZWZQdHI8V2ViQ29y
ZTo6U3RvcmFnZVF1b3RhTWFuYWdlcj4+IG1fc3RvcmFnZVF1b3RhTWFuYWdlcnM7CkBAIC01NzYs
MTAgKzU2OSw4IEBAIHByaXZhdGU6CiAgICAgV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyIG1fd2Vi
U1FMaXRlRGF0YWJhc2VUcmFja2VyOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKICAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBTdHJpbmc+IG1faWRiRGF0YWJhc2VQ
YXRoczsKICAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBSZWZQdHI8V2ViSURCU2VydmVyPj4g
bV93ZWJJREJTZXJ2ZXJzOwotI2VuZGlmCiAgICAgCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VS
KQogICAgIHN0cnVjdCBTZXJ2aWNlV29ya2VySW5mbyB7CkluZGV4OiBTb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNv
bm5lY3Rpb25Ub0NsaWVudC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJXZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQotCiAjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSAi
V2ViSURCQ29ubmVjdGlvblRvU2VydmVyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJJREJSZXN1
bHQuaCIKQEAgLTE5OSw1ICsxOTcsMyBAQCB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6
ZGlkR2V0QWxsCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0lu
ZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQu
aAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRl
eGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDgg
KzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogI2luY2x1ZGUgIk1lc3NhZ2VTZW5kZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNvbm5l
Y3Rpb25Ub0NsaWVudC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSW5kZXhlZERCLmg+CkBAIC05Miw1
ICs5MCwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXIuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJ
REJTZXJ2ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw4ICszMiw2IEBACiAjaW5jbHVkZSA8
V2ViQ29yZS9TdG9yYWdlUXVvdGFNYW5hZ2VyLmg+CiAjaW5jbHVkZSA8d3RmL3RocmVhZHMvQmlu
YXJ5U2VtYXBob3JlLmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIFJlZjxXZWJJREJTZXJ2ZXI+IFdlYklEQlNlcnZlcjo6Y3JlYXRlKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIFdlYkNvcmU6
OklEQlNlcnZlcjo6SURCU2VydmVyOjpTdG9yYWdlUXVvdGFNYW5hZ2VyU3BhY2VSZXF1ZXN0ZXIm
JiBzcGFjZVJlcXVlc3RlcikKQEAgLTQxOCw0ICs0MTYsMyBAQCB2b2lkIFdlYklEQlNlcnZlcjo6
Y2xvc2UoKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLSNlbmRpZgpJbmRleDogU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVy
LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5k
ZXhlZERCL1dlYklEQlNlcnZlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAK
ICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJDb25uZWN0aW9uLmgiCiAKICNpbmNsdWRlICJXZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaCIK
QEAgLTEwNSw1ICsxMDMsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIv
V2ViSURCU2VydmVyLm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5tZXNzYWdlcy5pbgkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURC
U2VydmVyLm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw2IEBACiAjIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogbWVzc2FnZXMgLT4gV2ViSURCU2VydmVyIHsKICAgICBEZWxldGVEYXRhYmFz
ZShXZWJDb3JlOjpJREJSZXF1ZXN0RGF0YSByZXF1ZXN0RGF0YSkKICAgICBPcGVuRGF0YWJhc2Uo
V2ViQ29yZTo6SURCUmVxdWVzdERhdGEgcmVxdWVzdERhdGEpCkBAIC01Miw1ICs1MCwzIEBAIG1l
c3NhZ2VzIC0+IFdlYklEQlNlcnZlciB7CiAKICAgICBHZXRBbGxEYXRhYmFzZU5hbWVzQW5kVmVy
c2lvbnMoV2ViQ29yZTo6SURCUmVzb3VyY2VJZGVudGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyLCBz
dHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgV2FudHNDb25uZWN0aW9uCiB9Ci0K
LSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAkocmV2aXNpb24gMjc1MTIzKQor
KysgU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjcxNiw3ICsyNzE2LDYgQEAgYm9vbCBBcmd1bWVudENvZGVyPE1lZGlhQ29u
c3RyYWludHM+OjpkZQogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
IHZvaWQgQXJndW1lbnRDb2RlcjxJREJLZXlQYXRoPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IElEQktleVBhdGgmIGtleVBhdGgpCiB7CiAgICAgYm9vbCBpc1N0cmluZyA9IFdURjo6
aG9sZHNfYWx0ZXJuYXRpdmU8U3RyaW5nPihrZXlQYXRoKTsKQEAgLTI3NDUsNyArMjc0NCw2IEBA
IGJvb2wgQXJndW1lbnRDb2RlcjxJREJLZXlQYXRoPjo6ZGVjb2RlKEQKICAgICB9CiAgICAgcmV0
dXJuIHRydWU7CiB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKIHZvaWQg
QXJndW1lbnRDb2RlcjxTZXJ2aWNlV29ya2VyT3JDbGllbnREYXRhPjo6ZW5jb2RlKEVuY29kZXIm
IGVuY29kZXIsIGNvbnN0IFNlcnZpY2VXb3JrZXJPckNsaWVudERhdGEmIGRhdGEpCkluZGV4OiBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTE2MSw2ICsxNjEsNyBAQCBzdHJ1Y3QgV2luZG93RmVhdHVyZXM7
CiAgICAgCiB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgUmVjdEVkZ2VzOwogdXNpbmcgRmxvYXRC
b3hFeHRlbnQgPSBSZWN0RWRnZXM8ZmxvYXQ+OwordXNpbmcgSURCS2V5UGF0aCA9IFZhcmlhbnQ8
U3RyaW5nLCBWZWN0b3I8U3RyaW5nPj47CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHN0cnVjdCBL
ZXlwcmVzc0NvbW1hbmQ7CkBAIC0yMDEsMTAgKzIwMiw2IEBAIHN0cnVjdCBNZWRpYUNvbnN0cmFp
bnRzOwogc3RydWN0IFNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YTsKICNlbmRpZgogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCi11c2luZyBJREJLZXlQYXRoID0gVmFyaWFudDxTdHJpbmcs
IFZlY3RvcjxTdHJpbmc+PjsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBF
TkFCTEUoV0VCR0wpCiBzdHJ1Y3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzOwogI2VuZGlm
CkBAIC03MjEsMTUgKzcxOCwxMSBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdl
YkNvcmU6CiB9OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogdGVt
cGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpJREJLZXlQYXRoPiB7CiAgICAg
c3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpJREJLZXlQYXRoJik7
CiAgICAgc3RhdGljIFdBUk5fVU5VU0VEX1JFVFVSTiBib29sIGRlY29kZShEZWNvZGVyJiwgV2Vi
Q29yZTo6SURCS2V5UGF0aCYpOwogfTsKIAotI2VuZGlmCi0KICNpZiBFTkFCTEUoU0VSVklDRV9X
T1JLRVIpCiAKIHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6U2Vydmlj
ZVdvcmtlck9yQ2xpZW50RGF0YT4gewpAQCAtOTA0LDcgKzg5Nyw2IEBAIHRlbXBsYXRlPD4gc3Ry
dWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6Tm8KICAgICA+OwogfTsKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpJbmRl
eGVkREI6OkdldEFsbFR5cGU+IHsKICAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAogICAg
ICAgICBXZWJDb3JlOjpJbmRleGVkREI6OkdldEFsbFR5cGUsCkBAIC05MTIsNyArOTA0LDYgQEAg
dGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpJbgogICAgICAgICBXZWJDb3Jl
OjpJbmRleGVkREI6OkdldEFsbFR5cGU6OlZhbHVlcwogICAgID47CiB9OwotI2VuZGlmCiAKICNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlOjpUeXBlPiB7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9TaGFyZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuY3BwCShyZXZpc2lvbiAy
NzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVy
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDEwICs0MCw3IEBAIHZvaWQgV2Vic2l0ZURhdGFT
dG9yZVBhcmFtZXRlcnM6OmVuY29kZSgKICAgICBlbmNvZGVyIDw8IG5ldHdvcmtTZXNzaW9uUGFy
YW1ldGVyczsKICAgICBlbmNvZGVyIDw8IHVpUHJvY2Vzc0Nvb2tpZVN0b3JhZ2VJZGVudGlmaWVy
OwogICAgIGVuY29kZXIgPDwgY29va2llU3RvcmFnZVBhdGhFeHRlbnNpb25IYW5kbGU7Ci0KLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBlbmNvZGVyIDw8IGluZGV4ZWREYXRhYmFz
ZURpcmVjdG9yeSA8PCBpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBlbmNvZGVyIDw8IHNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkgPDwgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSA8PCBzZXJ2aWNlV29ya2VyUHJvY2Vzc1Rlcm1pbmF0
aW9uRGVsYXlFbmFibGVkOwpAQCAtNzksNyArNzYsNiBAQCBPcHRpb25hbDxXZWJzaXRlRGF0YVN0
b3JlUGFyYW1ldGVycz4gV2ViCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAgICAgcGFy
YW1ldGVycy5jb29raWVTdG9yYWdlUGF0aEV4dGVuc2lvbkhhbmRsZSA9IFdURk1vdmUoKmNvb2tp
ZVN0b3JhZ2VQYXRoRXh0ZW5zaW9uSGFuZGxlKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIE9wdGlvbmFsPFN0cmluZz4gaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5OwogICAg
IGRlY29kZXIgPj4gaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5OwogICAgIGlmICghaW5kZXhlZERh
dGFiYXNlRGlyZWN0b3J5KQpAQCAtOTEsNyArODcsNiBAQCBPcHRpb25hbDxXZWJzaXRlRGF0YVN0
b3JlUGFyYW1ldGVycz4gV2ViCiAgICAgaWYgKCFpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGUpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAgICAgcGFyYW1ldGVy
cy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUgPSBXVEZNb3ZlKCppbmRl
eGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlmCiAKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCiAgICAgT3B0aW9uYWw8U3RyaW5nPiBzZXJ2aWNlV29ya2VyUmVn
aXN0cmF0aW9uRGlyZWN0b3J5OwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZURh
dGFTdG9yZVBhcmFtZXRlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9X
ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkp
CkBAIC01MywxMCArNTMsOCBAQCBzdHJ1Y3QgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgewog
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBjb29raWVTdG9yYWdlUGF0aEV4dGVuc2lvbkhh
bmRsZTsKICAgICBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyBuZXR3b3JrU2Vzc2lv
blBhcmFtZXRlcnM7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBTdHJpbmcg
aW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBp
bmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0jZW5kaWYKIAogI2lmIEVO
QUJMRShTRVJWSUNFX1dPUktFUikKICAgICBTdHJpbmcgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVk
REIvSURCVXRpbGl0aWVzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9E
YXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvSURCVXRpbGl0aWVzLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzAsOCArMzAsNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU2Vj
dXJpdHlPcmlnaW4uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNwYWNlIFdlYktpdCB7CiAKIFN0cmlu
ZyB1bmlxdWVEYXRhYmFzZUlkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNv
bnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2luLCBjb25zdCBXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKQpAQCAtNTYsNSArNTQsMyBAQCBTdHJp
bmcgdW5pcXVlRGF0YWJhc2VJZGVudGlmaWVyKGNvbnN0IFN0CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvSURCVXRp
bGl0aWVzLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFi
YXNlcy9JbmRleGVkREIvSURCVXRpbGl0aWVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEzICsy
NCwxMCBAQAogICoKICAqLwogCi0jaWZuZGVmIElEQlV0aWxpdGllc19oCi0jZGVmaW5lIElEQlV0
aWxpdGllc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5o
PgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgU2VjdXJpdHlPcmlnaW47CkBAIC00Miw2ICszOSwzIEBAIG5hbWVzcGFjZSBXZWJL
aXQgewogU3RyaW5nIHVuaXF1ZURhdGFiYXNlSWRlbnRpZmllcihjb25zdCBTdHJpbmcmIGRhdGFi
YXNlTmFtZSwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIGNv
bnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pOwogICAgIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LSNlbmRpZiAvLyBJREJVdGlsaXRpZXNfaApJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvRGF0
YWJhc2VzL0luZGV4ZWREQi9XZWJJREJSZXN1bHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9X
ZWJJREJSZXN1bHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViSURCUmVzdWx0LmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogCiBu
YW1lc3BhY2UgV2ViS2l0IHsKQEAgLTU2LDUgKzU0LDMgQEAgYm9vbCBXZWJJREJSZXN1bHQ6OmRl
Y29kZShJUEM6OkRlY29kZXImIAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQv
RGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJSZXN1bHQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlJlc3VsdC5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dl
YklEQlJlc3VsdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEg
b25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJTYW5kYm94
RXh0ZW5zaW9uLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9JREJSZXN1bHREYXRhLmg+CiAjaW5jbHVk
ZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBAIC02Niw1ICs2NCwzIEBAIHByaXZhdGU6CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1By
b3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzUHJveHkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMzQ5LDExICsxMzQ5LDggQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjphZGRTZXNz
aW9uKFdlYgogICAgIGlmIChjYW5TZW5kTWVzc2FnZSgpICYmIHNlbmRQYXJhbWV0ZXJzVG9OZXR3
b3JrUHJvY2VzcyA9PSBTZW5kUGFyYW1ldGVyc1RvTmV0d29ya1Byb2Nlc3M6OlllcykKICAgICAg
ICAgc2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OkFkZFdlYnNpdGVEYXRhU3RvcmUgeyBz
dG9yZS5wYXJhbWV0ZXJzKCkgfSwgMCk7CiAgICAgYXV0byBzZXNzaW9uSUQgPSBzdG9yZS5zZXNz
aW9uSUQoKTsKLSAgICBpZiAoIXNlc3Npb25JRC5pc0VwaGVtZXJhbCgpKSB7Ci0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCisgICAgaWYgKCFzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKICAg
ICAgICAgY3JlYXRlU3ltTGlua0ZvckZpbGVVcGdyYWRlKHN0b3JlLnJlc29sdmVkSW5kZXhlZERh
dGFiYXNlRGlyZWN0b3J5KCkpOwotI2VuZGlmCi0gICAgfQogfQogCiB2b2lkIE5ldHdvcmtQcm9j
ZXNzUHJveHk6OnJlbW92ZVNlc3Npb24oV2Vic2l0ZURhdGFTdG9yZSYgd2Vic2l0ZURhdGFTdG9y
ZSkKQEAgLTE1NDYsNyArMTU0Myw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6dGVzdFBy
b2Nlc3NJbmMKICAgICByZXBseShoYW5kbGVkKTsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpjcmVhdGVTeW1MaW5rRm9yRmlsZVVw
Z3JhZGUoY29uc3QgU3RyaW5nJiBpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnkpCiB7CiAgICAgaWYg
KGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeS5pc0VtcHR5KCkpCkBAIC0xNTU3LDcgKzE1NTMsNiBA
QCB2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OmNyZWF0ZVN5bUxpbmtGCiAgICAgaWYgKCFGaWxl
U3lzdGVtOjpmaWxlRXhpc3RzKG9sZFZlcnNpb25EaXJlY3RvcnkpKQogICAgICAgICBGaWxlU3lz
dGVtOjpjcmVhdGVTeW1ib2xpY0xpbmsoaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5LCBvbGRWZXJz
aW9uRGlyZWN0b3J5KTsKIH0KLSNlbmRpZgogCiB2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6Omdl
dExvY2FsU3RvcmFnZURldGFpbHMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFZlY3RvcjxMb2NhbFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXI6Ok9yaWdpbkRl
dGFpbHM+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewpJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMjYsOSArMjI2LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgYWRkU2Vzc2lvbihXZWJzaXRlRGF0YVN0b3JlJiwgU2VuZFBhcmFtZXRlcnNUb05l
dHdvcmtQcm9jZXNzKTsKICAgICB2b2lkIHJlbW92ZVNlc3Npb24oV2Vic2l0ZURhdGFTdG9yZSYp
OwogICAgIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZvaWQgY3JlYXRlU3lt
TGlua0ZvckZpbGVVcGdyYWRlKGNvbnN0IFN0cmluZyYgaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5
KTsKLSNlbmRpZgogCiAgICAgLy8gUHJvY2Vzc1Rocm90dGxlckNsaWVudAogICAgIHZvaWQgc2Vu
ZFByb2Nlc3NEaWRSZXN1bWUoKSBmaW5hbDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRl
RGF0YVN0b3JlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk5OSwxMSArMTk5OSw5IEBAIFdlYnNp
dGVEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYnNpdGVEYXRhU3QKIAogICAgIHBhcmFtZXRlcnMubmV0
d29ya1Nlc3Npb25QYXJhbWV0ZXJzID0gV1RGTW92ZShuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMp
OwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgcGFyYW1ldGVycy5pbmRleGVk
RGF0YWJhc2VEaXJlY3RvcnkgPSByZXNvbHZlZEluZGV4ZWREYXRhYmFzZURpcmVjdG9yeSgpOwog
ICAgIGlmICghcGFyYW1ldGVycy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnkuaXNFbXB0eSgpKQog
ICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3Rv
cnkocGFyYW1ldGVycy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnksIHBhcmFtZXRlcnMuaW5kZXhl
ZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgogCiAjaWYgRU5BQkxF
KFNFUlZJQ0VfV09SS0VSKQogICAgIHBhcmFtZXRlcnMuc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeSA9IHJlc29sdmVkU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSgp
OwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTE2LDcgKzExMTYsNiBAQCB2b2lkIFdlYlByb2Nlc3M6Om5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvCiAgICAgZm9yIChhdXRvKiBzdG9yYWdlQXJlYU1hcCA6IGNvcHlUb1Zl
Y3RvcihtX3N0b3JhZ2VBcmVhTWFwcy52YWx1ZXMoKSkpCiAgICAgICAgIHN0b3JhZ2VBcmVhTWFw
LT5kaXNjb25uZWN0KCk7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBmb3Ig
KGF1dG8mIHBhZ2UgOiBtX3BhZ2VNYXAudmFsdWVzKCkpIHsKICAgICAgICAgYXV0byBpZGJDb25u
ZWN0aW9uID0gcGFnZS0+Y29yZVBhZ2UoKS0+b3B0aW9uYWxJREJDb25uZWN0aW9uKCk7CiAgICAg
ICAgIGlmICghaWRiQ29ubmVjdGlvbikKQEAgLTExMjcsNyArMTEyNiw2IEBAIHZvaWQgV2ViUHJv
Y2Vzczo6bmV0d29ya1Byb2Nlc3NDb25uZWN0aW8KICAgICAgICAgICAgIHBhZ2UtPmNvcmVQYWdl
KCktPmNsZWFySURCQ29ubmVjdGlvbigpOwogICAgICAgICB9CiAgICAgfQotI2VuZGlmCiAKICNp
ZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgaWYgKFNXQ29udGV4dE1hbmFnZXI6OnNpbmds
ZXRvbigpLmNvbm5lY3Rpb24oKSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRh
YmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFz
ZVByb3ZpZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjYsMTEgKzY2LDkgQEAgV2ViRGF0YWJh
c2VQcm92aWRlcjo6fldlYkRhdGFiYXNlUHJvdmlkZQogICAgIGRhdGFiYXNlUHJvdmlkZXJzKCku
cmVtb3ZlKG1faWRlbnRpZmllcik7CiB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
IFdlYkNvcmU6OklEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyJiBXZWJEYXRhYmFzZVBy
b3ZpZGVyOjppZGJDb25uZWN0aW9uVG9TZXJ2ZXJGb3JTZXNzaW9uKGNvbnN0IFBBTDo6U2Vzc2lv
bklEJikKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uKCkuaWRiQ29ubmVjdGlvblRvU2VydmVyKCkuY29yZUNvbm5lY3Rp
b25Ub1NlcnZlcigpOwogfQotI2VuZGlmCiAKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRh
dGFiYXNlUHJvdmlkZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMzYsOSArMzYsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIFJlZjxXZWJEYXRhYmFzZVByb3ZpZGVyPiBnZXRPckNyZWF0ZSh1aW50NjRf
dCBpZGVudGlmaWVyKTsKICAgICB2aXJ0dWFsIH5XZWJEYXRhYmFzZVByb3ZpZGVyKCk7CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBXZWJDb3JlOjpJREJDbGllbnQ6OklEQkNv
bm5lY3Rpb25Ub1NlcnZlciYgaWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQ
QUw6OlNlc3Npb25JRCYpIGZpbmFsOwotI2VuZGlmCiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQg
V2ViRGF0YWJhc2VQcm92aWRlcih1aW50NjRfdCBpZGVudGlmaWVyKTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1Nl
cnZlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNl
cy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmNwcAkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURC
Q29ubmVjdGlvblRvU2VydmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5o
IgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJEYXRhUmVmZXJl
bmNlLmgiCiAjaW5jbHVkZSAiTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3NNZXNzYWdlcy5o
IgogI2luY2x1ZGUgIk5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oIgpAQCAtMzMzLDUgKzMzMSwz
IEBAIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjpjb25uZWN0aW8KIH0KIAogfSAvLyBu
YW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNv
bm5lY3Rpb25Ub1NlcnZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWRE
Qi9XZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiTWVzc2FnZVNlbmRlci5oIgogI2luY2x1ZGUgIlNhbmRib3hFeHRlbnNpb24uaCIK
ICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5oPgpAQCAtMTExLDUgKzEw
OSwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLm1lc3NhZ2VzLmlu
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhl
ZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5tZXNzYWdlcy5pbgkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURC
Q29ubmVjdGlvblRvU2VydmVyLm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsy
MCw2IEBACiAjIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbWVzc2FnZXMgLT4gV2ViSURCQ29ubmVjdGlvblRvU2Vy
dmVyIHsKICAgICBEaWREZWxldGVEYXRhYmFzZShXZWJDb3JlOjpJREJSZXN1bHREYXRhIHJlc3Vs
dCkKICAgICBEaWRPcGVuRGF0YWJhc2UoV2ViQ29yZTo6SURCUmVzdWx0RGF0YSByZXN1bHQpCkBA
IC00OSw1ICs0NywzIEBAIG1lc3NhZ2VzIC0+IFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlciB7CiAK
ICAgICBEaWRHZXRBbGxEYXRhYmFzZU5hbWVzQW5kVmVyc2lvbnMoV2ViQ29yZTo6SURCUmVzb3Vy
Y2VJZGVudGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyLCBWZWN0b3I8V2ViQ29yZTo6SURCRGF0YWJh
c2VOYW1lQW5kVmVyc2lvbj4gZGF0YWJhc2VzKQogfQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3
b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHAJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0MywxMyArMTQzLDExIEBAIHZvaWQg
TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRSZWNlaXYKICAgICB9CiAjZW5kaWYKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSA9PSBNZXNzYWdlczo6V2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjptZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgaWYgKG1fd2ViSURCQ29ubmVjdGlvbikKICAgICAgICAg
ICAgIG1fd2ViSURCQ29ubmVjdGlvbi0+ZGlkUmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVj
b2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShTRVJW
SUNFX1dPUktFUikKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVz
c2FnZXM6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CkBA
IC0yMDQsMTAgKzIwMiw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRDbG9z
ZSgKICAgICBSZWY8TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uPiBwcm90ZWN0b3IoKnRoaXMpOwog
ICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLm5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbkNsb3Nl
ZCh0aGlzKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGlmIChhdXRvIGlk
YkNvbm5lY3Rpb24gPSBzdGQ6OmV4Y2hhbmdlKG1fd2ViSURCQ29ubmVjdGlvbiwgbnVsbHB0cikp
CiAgICAgICAgIGlkYkNvbm5lY3Rpb24tPmNvbm5lY3Rpb25Ub1NlcnZlckxvc3QoKTsKLSNlbmRp
ZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIGlmIChhdXRvIHN3Q29ubmVjdGlv
biA9IHN0ZDo6ZXhjaGFuZ2UobV9zd0Nvbm5lY3Rpb24sIG51bGxwdHIpKQpAQCAtMjgzLDE0ICsy
NzksMTIgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZENhY2hlUgogfQogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIFdlYklEQkNvbm5lY3Rpb25Ub1Nl
cnZlciYgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjppZGJDb25uZWN0aW9uVG9TZXJ2ZXIoKQog
ewogICAgIGlmICghbV93ZWJJREJDb25uZWN0aW9uKQogICAgICAgICBtX3dlYklEQkNvbm5lY3Rp
b24gPSBXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXI6OmNyZWF0ZSgpOwogICAgIHJldHVybiAqbV93
ZWJJREJDb25uZWN0aW9uOwogfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIp
CiBXZWJTV0NsaWVudENvbm5lY3Rpb24mIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6c2Vydmlj
ZVdvcmtlckNvbm5lY3Rpb24oKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdv
cmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC02NiwxMCArNjYsOCBAQCBwdWJsaWM6
CiAKICAgICB2b2lkIHdyaXRlQmxvYnNUb1RlbXBvcmFyeUZpbGVzKGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBibG9iVVJMcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8U3RyaW5nPiYmIGZp
bGVQYXRocyk+JiYpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgV2ViSURC
Q29ubmVjdGlvblRvU2VydmVyKiBleGlzdGluZ0lEQkNvbm5lY3Rpb25Ub1NlcnZlcigpIGNvbnN0
IHsgcmV0dXJuIG1fd2ViSURCQ29ubmVjdGlvbi5nZXQoKTsgfTsKICAgICBXZWJJREJDb25uZWN0
aW9uVG9TZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZlcigpOwotI2VuZGlmCiAKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCiAgICAgV2ViU1dDbGllbnRDb25uZWN0aW9uJiBzZXJ2aWNlV29y
a2VyQ29ubmVjdGlvbigpOwpAQCAtMTIyLDkgKzEyMCw3IEBAIHByaXZhdGU6CiAgICAgT3B0aW9u
YWw8YXVkaXRfdG9rZW5fdD4gbV9uZXR3b3JrUHJvY2Vzc0F1ZGl0VG9rZW47CiAjZW5kaWYKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxXZWJJREJDb25uZWN0aW9u
VG9TZXJ2ZXI+IG1fd2ViSURCQ29ubmVjdGlvbjsKLSNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQogICAgIFJlZlB0cjxXZWJTV0NsaWVudENvbm5lY3Rpb24+IG1fc3dDb25uZWN0
aW9uOwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzksOSArMTM5LDcgQEAg
dm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdAogewogICAgIGF1dG8gcGFn
ZUNvbmZpZ3VyYXRpb24gPSBwYWdlQ29uZmlndXJhdGlvbldpdGhFbXB0eUNsaWVudHMoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCkpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCiAgICAgcGFnZUNvbmZpZ3VyYXRpb24uZGF0YWJhc2VQcm92aWRlciA9IFdlYkRhdGFi
YXNlUHJvdmlkZXI6OmdldE9yQ3JlYXRlKG1fcGFnZUdyb3VwSUQpOwotI2VuZGlmCiAgICAgcGFn
ZUNvbmZpZ3VyYXRpb24uc29ja2V0UHJvdmlkZXIgPSBXZWJTb2NrZXRQcm92aWRlcjo6Y3JlYXRl
KG1fd2ViUGFnZVByb3h5SUQpOwogICAgIHBhZ2VDb25maWd1cmF0aW9uLnVzZXJDb250ZW50UHJv
dmlkZXIgPSBtX3VzZXJDb250ZW50Q29udHJvbGxlcjsKICNpZiBFTkFCTEUoV0VCX1JUQykKSW5k
ZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0
TGVnYWN5L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIxLTAz
LTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5B
QkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJT
LCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRSAmIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgor
CisgICAgICAgICogU3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIuY3BwOgorICAgICAgICAoSW5Q
cm9jZXNzSURCU2VydmVyOjpkaXNwYXRjaFRhc2tSZXBseSk6CisgICAgICAgICogU3RvcmFnZS9J
blByb2Nlc3NJREJTZXJ2ZXIuaDoKKyAgICAgICAgKiBTdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlk
ZXIuY3BwOgorICAgICAgICAoV2ViRGF0YWJhc2VQcm92aWRlcjo6ZGVsZXRlQWxsRGF0YWJhc2Vz
KToKKyAgICAgICAgKiBTdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuaDoKKwogMjAyMS0wMy0y
NiAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIFtDTWFr
ZV0gRGVwcmVjYXRlIHVzaW5nIERFUklWRURfU09VUkNFU19ESVIvRk9XQVJESU5HX0hFQURFUlNf
RElSIGRpcmVjdGx5CkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvSW5Qcm9jZXNz
SURCU2VydmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2Uv
SW5Qcm9jZXNzSURCU2VydmVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktp
dExlZ2FjeS9TdG9yYWdlL0luUHJvY2Vzc0lEQlNlcnZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDggKzI1LDYgQEAKIAogI2luY2x1ZGUgIkluUHJvY2Vzc0lEQlNlcnZlci5oIgogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJTdG9yYWdlVGhyZWFkLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNv
bm5lY3Rpb25Ub0NsaWVudC5oPgpAQCAtNTEwLDUgKzUwOCwzIEBAIHZvaWQgSW5Qcm9jZXNzSURC
U2VydmVyOjpkaXNwYXRjaFRhc2tSZXAKICAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKICAg
ICBjYWxsT25NYWluVGhyZWFkKFdURk1vdmUoZnVuY3Rpb24pKTsKIH0KLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdl
L0luUHJvY2Vzc0lEQlNlcnZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kv
U3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYktpdExlZ2FjeS9TdG9yYWdlL0luUHJvY2Vzc0lEQlNlcnZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvSURCQ29ubmVjdGlvblRvU2VydmVyLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9JREJTZXJ2ZXIuaD4KQEAgLTEzNSw1ICsxMzMsMyBAQCBwcml2YXRlOgogCiAgICAgSGFz
aE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIFJlZlB0cjxXZWJDb3JlOjpTdG9yYWdlUXVvdGFN
YW5hZ2VyPj4gbV9xdW90YU1hbmFnZXJzOwogfTsKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL1dlYkRhdGFiYXNl
UHJvdmlkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9X
ZWJEYXRhYmFzZVByb3ZpZGVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktp
dExlZ2FjeS9TdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00Miw3ICs0Miw2IEBAIFdlYkRhdGFiYXNlUHJvdmlkZXI6On5XZWJEYXRhYmFzZVByb3ZpZGUK
IHsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogV2ViQ29yZTo6SURCQ2xpZW50
OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXImIFdlYkRhdGFiYXNlUHJvdmlkZXI6OmlkYkNvbm5lY3Rp
b25Ub1NlcnZlckZvclNlc3Npb24oY29uc3QgUEFMOjpTZXNzaW9uSUQmIHNlc3Npb25JRCkKIHsK
ICAgICByZXR1cm4gbV9pZGJTZXJ2ZXJNYXAuZW5zdXJlKHNlc3Npb25JRCwgWyZzZXNzaW9uSURd
IHsKQEAgLTU1LDUgKzU0LDMgQEAgdm9pZCBXZWJEYXRhYmFzZVByb3ZpZGVyOjpkZWxldGVBbGxE
YXRhYgogICAgIGZvciAoYXV0byYgc2VydmVyIDogbV9pZGJTZXJ2ZXJNYXAudmFsdWVzKCkpCiAg
ICAgICAgIHNlcnZlci0+Y2xvc2VBbmREZWxldGVEYXRhYmFzZXNNb2RpZmllZFNpbmNlKC1XYWxs
VGltZTo6aW5maW5pdHkoKSk7CiB9Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS9TdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRlci5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRlci5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yNSwzMyArMjUsMjYgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJJblByb2Nlc3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0RhdGFiYXNlUHJv
dmlkZXIuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFw
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCi0jaW5jbHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgiCi0jZW5kaWYKLQogY2xhc3MgV2Vi
RGF0YWJhc2VQcm92aWRlciBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpEYXRhYmFzZVByb3ZpZGVy
IHsKICAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8V2ViRGF0YWJhc2VQcm92aWRlcj47
CiBwdWJsaWM6CiAgICAgc3RhdGljIFdlYkRhdGFiYXNlUHJvdmlkZXImIHNpbmdsZXRvbigpOwog
ICAgIHZpcnR1YWwgfldlYkRhdGFiYXNlUHJvdmlkZXIoKTsKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQogICAgIFdlYkNvcmU6OklEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVy
JiBpZGJDb25uZWN0aW9uVG9TZXJ2ZXJGb3JTZXNzaW9uKGNvbnN0IFBBTDo6U2Vzc2lvbklEJikg
b3ZlcnJpZGU7CiAKICAgICB2b2lkIGRlbGV0ZUFsbERhdGFiYXNlcygpOwotI2VuZGlmCiAKIHBy
aXZhdGU6CiAgICAgZXhwbGljaXQgV2ViRGF0YWJhc2VQcm92aWRlcigpOwogCiAgICAgc3RhdGlj
IFN0cmluZyBpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlQYXRoKCk7CiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKICAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBSZWZQdHI8SW5Qcm9j
ZXNzSURCU2VydmVyPj4gbV9pZGJTZXJ2ZXJNYXA7Ci0jZW5kaWYKIH07CkluZGV4OiBTb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0w
My0yNiAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VS
UywgaXQgc2VlbXMgbGlrZSBpdCBpcyBvbiBmb3IgYWxsIHBvcnRzCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM4MTAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGNvbmRpdGlvbmFscy4K
KworICAgICAgICAqIFN0b3JhZ2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tOgorICAgICAgICAoLVtX
ZWJEYXRhYmFzZU1hbmFnZXIgZGVsZXRlQWxsSW5kZXhlZERhdGFiYXNlc10pOgorCiAyMDIxLTAz
LTI2ICBKZXNzaWUgQmVybGluICA8amJlcmxpbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0
ZSB0aGUgQkVGT1JFL1NJTkNFLCBTWVNURU1fVkVSU0lPTl9QUkVGSVgsIGFuZCBNQUNPU1hfREVQ
TE9ZTUVOVF9UQVJHRVQgZmxhZ3MKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1N0b3Jh
Z2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1N0b3JhZ2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9TdG9yYWdlL1dlYkRhdGFiYXNlTWFuYWdlci5tbQko
d29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogI2ltcG9ydCAiV2ViRGF0YWJhc2VNYW5h
Z2VyUHJpdmF0ZS5oIgogCiAjaW1wb3J0ICJXZWJEYXRhYmFzZU1hbmFnZXJDbGllbnQuaCIKKyNp
bXBvcnQgIldlYkRhdGFiYXNlUHJvdmlkZXIuaCIKICNpbXBvcnQgIldlYlBsYXRmb3JtU3RyYXRl
Z2llcy5oIgogI2ltcG9ydCAiV2ViU2VjdXJpdHlPcmlnaW5JbnRlcm5hbC5oIgogI2ltcG9ydCA8
V2ViQ29yZS9EYXRhYmFzZU1hbmFnZXIuaD4KQEAgLTM2LDEwICszNyw2IEBACiAjaW1wb3J0IDxX
ZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDx3dGYvY29jb2EvVmVjdG9yQ29jb2Eu
aD4KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotI2ltcG9ydCAiV2ViRGF0YWJhc2VQ
cm92aWRlci5oIgotI2VuZGlmCi0KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCAi
V2ViRGF0YWJhc2VNYW5hZ2VySW50ZXJuYWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvRGF0YWJhc2VU
cmFja2VyLmg+CkBAIC0xNDMsOSArMTQwLDcgQEAgLSAoQk9PTClkZWxldGVEYXRhYmFzZTooTlNT
dHJpbmcgKilkYXRhYgogLy8gRm9yIER1bXBSZW5kZXJUcmVlIHN1cHBvcnQgb25seQogLSAodm9p
ZClkZWxldGVBbGxJbmRleGVkRGF0YWJhc2VzCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgV2ViRGF0YWJhc2VQcm92aWRlcjo6c2luZ2xldG9uKCkuZGVsZXRlQWxsRGF0YWJh
c2VzKCk7Ci0jZW5kaWYKIH0KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCkluZGV4OiBTb3Vy
Y2UvY21ha2UvT3B0aW9uc0ZUVy5jbWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvY21ha2UvT3B0
aW9uc0ZUVy5jbWFrZQkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL2NtYWtlL09wdGlvbnNG
VFcuY21ha2UJKHdvcmtpbmcgY29weSkKQEAgLTgxLDcgKzgxLDYgQEAgV0VCS0lUX09QVElPTl9E
RUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFXwogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX0ZUUERJUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRf
VkFMVUUoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJIFBSSVZBVEUgT0ZGKQogV0VCS0lUX09QVElPTl9E
RUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0dFT0xPQ0FUSU9OIFBSSVZBVEUgT04pCi1XRUJLSVRf
T1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSBQUklWQVRF
IE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOVEVSU0VDVElP
Tl9PQlNFUlZFUiBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUo
RU5BQkxFX01BQ19HRVNUVVJFX0VWRU5UUyBQUklWQVRFIE9GRikKIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NQVRITUwgUFJJVkFURSBPTikKSW5kZXg6IFNvdXJjZS9j
bWFrZS9PcHRpb25zTWFjLmNtYWtlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9jbWFrZS9PcHRpb25z
TWFjLmNtYWtlCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvY21ha2UvT3B0aW9uc01hYy5j
bWFrZQkod29ya2luZyBjb3B5KQpAQCAtNDYsOCArNDYsNiBAQCBXRUJLSVRfT1BUSU9OX0RFRkFV
TFRfUE9SVF9WQUxVRShFTkFCTEVfCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfUElDVFVSRV9JTl9QSUNUVVJFX0FQSSBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9E
RUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0dBTUVQQUQgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HRU9MT0NBVElPTiBQUklWQVRFIE9OKQotV0VC
S0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOREVYRURfREFUQUJBU0UgUFJJ
VkFURSBPTikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9Q
T1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BU
SU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5TUEVDVE9SX0FMVEVSTkFURV9ESVNQQVRD
SEVSUyBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxF
X0lOU1BFQ1RPUl9FWFRFTlNJT05TIFBSSVZBVEUgT04pCkluZGV4OiBTb3VyY2UvY21ha2UvT3B0
aW9uc1dpbi5jbWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFr
ZQkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UJKHdv
cmtpbmcgY29weSkKQEAgLTMzLDggKzMzLDYgQEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRf
VkFMVUUoRU5BQkxFXwogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0ZV
TExTQ1JFRU5fQVBJIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9HQU1FUEFEIFBVQkxJQyBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9W
QUxVRShFTkFCTEVfR0VPTE9DQVRJT04gUFVCTElDIE9OKQotV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0lOREVYRURfREFUQUJBU0UgUFVCTElDIE9OKQotV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VS
UyBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5Q
VVRfVFlQRV9DT0xPUiBQVUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFM
VUUoRU5BQkxFX0lOUFVUX1RZUEVfREFURSBQVUJMSUMgT0ZGKQogV0VCS0lUX09QVElPTl9ERUZB
VUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCBQVUJMSUMgT0ZG
KQpJbmRleDogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQkocmV2aXNpb24gMjc1MTIzKQorKysg
U291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xNzEs
OCArMTcxLDYgQEAgbWFjcm8oV0VCS0lUX09QVElPTl9CRUdJTikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfR0FNRVBBRCAiVG9nZ2xlIEdhbWVwYWQgc3VwcG9ydCIgUFJJVkFURSBP
RkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0dFT0xPQ0FUSU9OICJUb2dnbGUg
R2VvbG9jYXRpb24gc3VwcG9ydCIgUFJJVkFURSBPTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklO
RShFTkFCTEVfR1BVX1BST0NFU1MgIlRvZ2dsZSBHUFUgUHJvY2VzcyBzdXBwb3J0IiBQUklWQVRF
IE9GRikKLSAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAi
VG9nZ2xlIEluZGV4ZWQgRGF0YWJhc2Ugc3VwcG9ydCIgUFJJVkFURSBPTikKLSAgICBXRUJLSVRf
T1BUSU9OX0RFRklORShFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTICJUb2dnbGUg
c3VwcG9ydCBmb3IgSW5kZXhlZCBEYXRhYmFzZSBpbiB3b3JrZXJzIiBQUklWQVRFIE9OKQogICAg
IFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SICJUb2dnbGUgSW5w
dXQgVHlwZSBDb2xvciBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9OX0RF
RklORShFTkFCTEVfSU5QVVRfVFlQRV9EQVRFICJUb2dnbGUgSW5wdXQgVHlwZSBEYXRlIHN1cHBv
cnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9JTlBVVF9U
WVBFX0RBVEVUSU1FTE9DQUwgIlRvZ2dsZSBJbnB1dCBUeXBlIERhdGV0aW1lbG9jYWwgc3VwcG9y
dCIgUFJJVkFURSBPRkYpCkBAIC0yNzQsNyArMjcyLDYgQEAgbWFjcm8oV0VCS0lUX09QVElPTl9C
RUdJTikKICAgICBXRUJLSVRfT1BUSU9OX0RFUEVORChFTkFCTEVfRlRMX0pJVCBFTkFCTEVfREZH
X0pJVCkKICAgICBXRUJLSVRfT1BUSU9OX0RFUEVORChFTkFCTEVfV0VCQVNTRU1CTFkgRU5BQkxF
X0pJVCkKICAgICBXRUJLSVRfT1BUSU9OX0RFUEVORChFTkFCTEVfV0VCQVNTRU1CTFlfQjNKSVQg
RU5BQkxFX0ZUTF9KSVQpCi0gICAgV0VCS0lUX09QVElPTl9ERVBFTkQoRU5BQkxFX0lOREVYRURf
REFUQUJBU0VfSU5fV09SS0VSUyBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkKICAgICBXRUJLSVRf
T1BUSU9OX0RFUEVORChFTkFCTEVfSU5TUEVDVE9SX0FMVEVSTkFURV9ESVNQQVRDSEVSUyBFTkFC
TEVfUkVNT1RFX0lOU1BFQ1RPUikKICAgICBXRUJLSVRfT1BUSU9OX0RFUEVORChFTkFCTEVfTUVE
SUFfQ09OVFJPTFNfU0NSSVBUIEVOQUJMRV9WSURFTykKICAgICBXRUJLSVRfT1BUSU9OX0RFUEVO
RChFTkFCTEVfTUVESUFfU09VUkNFIEVOQUJMRV9WSURFTykKSW5kZXg6IFNvdXJjZS9jbWFrZS90
b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnByb3BzCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9j
bWFrZS90b29scy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzLnByb3BzCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy5wcm9wcwkod29y
a2luZyBjb3B5KQpAQCAtMjgsNyArMjgsNiBAQAogICAgIDxFTkFCTEVfR0FNRVBBRCAvPgogICAg
IDxFTkFCTEVfR0VPTE9DQVRJT04+RU5BQkxFX0dFT0xPQ0FUSU9OPC9FTkFCTEVfR0VPTE9DQVRJ
T04+CiAgICAgPEVOQUJMRV9ISUdIX0RQSV9DQU5WQVM+RU5BQkxFX0hJR0hfRFBJX0NBTlZBUzwv
RU5BQkxFX0hJR0hfRFBJX0NBTlZBUz4KLSAgICA8RU5BQkxFX0lOREVYRURfREFUQUJBU0UgLz4K
ICAgICA8RU5BQkxFX0lOUFVUX1NQRUVDSCAvPgogICAgIDxFTkFCTEVfSU5QVVRfVFlQRV9DT0xP
UiAvPgogICAgIDxFTkFCTEVfSU5QVVRfVFlQRV9EQVRFIC8+CkBAIC02Niw3ICs2NSw3IEBACiAg
IDwvUHJvcGVydHlHcm91cD4KICAgPEl0ZW1EZWZpbml0aW9uR3JvdXA+CiAgICAgPENsQ29tcGls
ZT4KLSAgICAgIDxQcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4kKEVOQUJMRV8zRF9UUkFOU0ZPUk1T
KTskKEVOQUJMRV9PVkVSRkxPV19TQ1JPTExJTkdfVE9VQ0gpOyQoRU5BQkxFX0FUVEFDSE1FTlRf
RUxFTUVOVCk7JChFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcpOyQoRU5BQkxFX0NTUzNfQ09ORElU
SU9OQUxfUlVMRVMpOyQoRU5BQkxFX0NTU19JTUFHRV9TRVQpOyQoRU5BQkxFX0NTUzNfVEVYVCk7
JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLKTskKEVOQUJMRV9DU1NfU0hBREVSUyk7
JChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKTskKEVOQUJMRV9DU1NfU0VMRUNUT1JTX0xFVkVMNCk7
JChFTkFCTEVfQ1NTX1NIQVBFX0lOU0lERSk7JChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFU
SU9OU19UUkFOU0lUSU9OU19VTlBSRUZJWEVEKTskKEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSk7
JChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5ETEVSKTskKEVOQUJMRV9EQVJLX01PREVfQ1NTKTsk
KEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVfREFUQUxJU1RfRUxFTUVOVCk7JChFTkFCTEVfREVW
SUNFX09SSUVOVEFUSU9OKTskKEVOQUJMRV9ESVJFQ1RPUllfVVBMT0FEKTskKEVOQUJMRV9FTkNS
WVBURURfTUVESUEpOyQoRU5BQkxFX0ZFVENIX0FQSSk7JChFTkFCTEVfRklMRV9TWVNURU0pOyQo
RU5BQkxFX0ZVTExTQ1JFRU5fQVBJKTskKEVOQUJMRV9HQU1FUEFEKTskKEVOQUJMRV9HRU9MT0NB
VElPTik7JChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKTskKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
KTskKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQoRU5B
QkxFX0lOUFVUX1RZUEVfREFURSk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMKTsk
KEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKTskKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpOyQoRU5B
QkxFX0lOUFVUX1RZUEVfV0VFSyk7JChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSk7JChF
TkFCTEVfTElOS19QUkVSRU5ERVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTUlDUk9EQVRB
KTskKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpOyQoRU5BQkxFX05PVElGSUNBVElPTlMpOyQo
RU5BQkxFX1NDUklQVEVEX1NQRUVDSCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5BQkxF
X01FRElBX0NPTlRST0xTX1NDUklQVCk7JChFTkFCTEVfTUVESUFfU09VUkNFKTskKEVOQUJMRV9N
RURJQV9TVEFUSVNUSUNTKTskKEVOQUJMRV9TUUxfREFUQUJBU0UpOyQoRU5BQkxFX1NUWUxFX1ND
T1BFRCk7JChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKTskKEVOQUJMRV9TVkdfRE9NX09CSkNfQklO
RElOR1MpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfQVVESU8pOyQoRU5BQkxFX1dFQkdM
KTskKEVOQUJMRV9XRUJHUFUpOyQoRU5BQkxFX1dFQlhSKTskKEVOQUJMRV9YSFJfVElNRU9VVCk7
JChFTkFCTEVfWFNMVCk7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRl
ZmluaXRpb25zPgorICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPiQoRU5BQkxFXzNEX1RS
QU5TRk9STVMpOyQoRU5BQkxFX09WRVJGTE9XX1NDUk9MTElOR19UT1VDSCk7JChFTkFCTEVfQVRU
QUNITUVOVF9FTEVNRU5UKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ1NT
M19DT05ESVRJT05BTF9SVUxFUyk7JChFTkFCTEVfQ1NTX0lNQUdFX1NFVCk7JChFTkFCTEVfQ1NT
M19URVhUKTskKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspOyQoRU5BQkxFX0NTU19T
SEFERVJTKTskKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpOyQoRU5BQkxFX0NTU19TRUxFQ1RPUlNf
TEVWRUw0KTskKEVOQUJMRV9DU1NfU0hBUEVfSU5TSURFKTskKEVOQUJMRV9DU1NfVFJBTlNGT1JN
U19BTklNQVRJT05TX1RSQU5TSVRJT05TX1VOUFJFRklYRUQpOyQoRU5BQkxFX0NVUlNPUl9WSVNJ
QklMSVRZKTskKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpOyQoRU5BQkxFX0RBUktfTU9E
RV9DU1MpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKTskKEVO
QUJMRV9ERVZJQ0VfT1JJRU5UQVRJT04pOyQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpOyQoRU5B
QkxFX0VOQ1JZUFRFRF9NRURJQSk7JChFTkFCTEVfRkVUQ0hfQVBJKTskKEVOQUJMRV9GSUxFX1NZ
U1RFTSk7JChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpOyQoRU5BQkxFX0dBTUVQQUQpOyQoRU5BQkxF
X0dFT0xPQ0FUSU9OKTskKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpOyQoRU5BQkxFX0lOUFVUX1RZ
UEVfQ09MT1IpOyQoRU5BQkxFX0lOUFVUX1NQRUVDSCk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRF
KTskKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVf
TU9OVEgpOyQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVL
KTskKEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9MSU5LX1BSRVJFTkRF
Uik7JChFTkFCTEVfTUFUSE1MKTskKEVOQUJMRV9NSUNST0RBVEEpOyQoRU5BQkxFX01PVVNFX0NV
UlNPUl9TQ0FMRSk7JChFTkFCTEVfTk9USUZJQ0FUSU9OUyk7JChFTkFCTEVfU0NSSVBURURfU1BF
RUNIKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NS
SVBUKTskKEVOQUJMRV9NRURJQV9TT1VSQ0UpOyQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpOyQo
RU5BQkxFX1NRTF9EQVRBQkFTRSk7JChFTkFCTEVfU1RZTEVfU0NPUEVEKTskKEVOQUJMRV9TVUJQ
SVhFTF9MQVlPVVQpOyQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVfVklE
RU8pOyQoRU5BQkxFX1dFQl9BVURJTyk7JChFTkFCTEVfV0VCR0wpOyQoRU5BQkxFX1dFQkdQVSk7
JChFTkFCTEVfV0VCWFIpOyQoRU5BQkxFX1hIUl9USU1FT1VUKTskKEVOQUJMRV9YU0xUKTslKFBy
ZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+CiAgICAgPC9D
bENvbXBpbGU+CiAgIDwvSXRlbURlZmluaXRpb25Hcm91cD4KICAgPEl0ZW1Hcm91cD4KQEAgLTE3
OCwxMCArMTc3LDYgQEAKICAgICAgIDxWYWx1ZT4kKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpPC9W
YWx1ZT4KICAgICAgIDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFi
bGU+CiAgICAgPC9CdWlsZE1hY3JvPgotICAgIDxCdWlsZE1hY3JvIEluY2x1ZGU9IkVOQUJMRV9J
TkRFWEVEX0RBVEFCQVNFIj4KLSAgICAgIDxWYWx1ZT4kKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
KTwvVmFsdWU+Ci0gICAgICA8RW52aXJvbm1lbnRWYXJpYWJsZT50cnVlPC9FbnZpcm9ubWVudFZh
cmlhYmxlPgotICAgIDwvQnVpbGRNYWNybz4KICAgICA8QnVpbGRNYWNybyBJbmNsdWRlPSJFTkFC
TEVfSU5QVVRfU1BFRUNIIj4KICAgICAgIDxWYWx1ZT4kKEVOQUJMRV9JTlBVVF9TUEVFQ0gpPC9W
YWx1ZT4KICAgICAgIDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50VmFyaWFi
bGU+CkluZGV4OiBTb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0NhaXJv
LnByb3BzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9jbWFrZS90b29scy92c3Byb3BzL0ZlYXR1cmVE
ZWZpbmVzQ2Fpcm8ucHJvcHMJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9jbWFrZS90b29s
cy92c3Byb3BzL0ZlYXR1cmVEZWZpbmVzQ2Fpcm8ucHJvcHMJKHdvcmtpbmcgY29weSkKQEAgLTI4
LDcgKzI4LDYgQEAKICAgICA8RU5BQkxFX0dBTUVQQUQgLz4KICAgICA8RU5BQkxFX0dFT0xPQ0FU
SU9OPkVOQUJMRV9HRU9MT0NBVElPTjwvRU5BQkxFX0dFT0xPQ0FUSU9OPgogICAgIDxFTkFCTEVf
SElHSF9EUElfQ0FOVkFTPkVOQUJMRV9ISUdIX0RQSV9DQU5WQVM8L0VOQUJMRV9ISUdIX0RQSV9D
QU5WQVM+Ci0gICAgPEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFIC8+CiAgICAgPEVOQUJMRV9JTlBV
VF9TUEVFQ0ggLz4KICAgICA8RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgLz4KICAgICA8RU5BQkxF
X0lOUFVUX1RZUEVfREFURSAvPgpAQCAtNjYsNyArNjUsNyBAQAogICA8L1Byb3BlcnR5R3JvdXA+
CiAgIDxJdGVtRGVmaW5pdGlvbkdyb3VwPgogICAgIDxDbENvbXBpbGU+Ci0gICAgICA8UHJlcHJv
Y2Vzc29yRGVmaW5pdGlvbnM+JChFTkFCTEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfT1ZFUkZM
T1dfU0NST0xMSU5HX1RPVUNIKTskKEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpOyQoRU5BQkxF
X0NIQU5ORUxfTUVTU0FHSU5HKTskKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKTskKEVO
QUJMRV9DU1NfSU1BR0VfU0VUKTskKEVOQUJMRV9DU1MzX1RFWFQpOyQoRU5BQkxFX0NTU19CT1hf
REVDT1JBVElPTl9CUkVBSyk7JChFTkFCTEVfQ1NTX1NIQURFUlMpOyQoRU5BQkxFX0NTU19DT01Q
T1NJVElORyk7JChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpOyQoRU5BQkxFX0NTU19TSEFQ
RV9JTlNJREUpOyQoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVFJBTlNJVElPTlNf
VU5QUkVGSVhFRCk7JChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpOyQoRU5BQkxFX0NVU1RPTV9T
Q0hFTUVfSEFORExFUik7JChFTkFCTEVfREFSS19NT0RFX0NTUyk7JChFTkFCTEVfREFUQUdSSUQp
OyQoRU5BQkxFX0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7
JChFTkFCTEVfRElSRUNUT1JZX1VQTE9BRCk7JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTskKEVO
QUJMRV9GRVRDSF9BUEkpOyQoRU5BQkxFX0ZJTEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NSRUVO
X0FQSSk7JChFTkFCTEVfR0FNRVBBRCk7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJ
R0hfRFBJX0NBTlZBUyk7JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk7JChFTkFCTEVfSU5QVVRf
VFlQRV9DT0xPUik7JChFTkFCTEVfSU5QVVRfU1BFRUNIKTskKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEUpOyQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NBTCk7JChFTkFCTEVfSU5QVVRfVFlQ
RV9NT05USCk7JChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKTskKEVOQUJMRV9JTlBVVF9UWVBFX1dF
RUspOyQoRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEpOyQoRU5BQkxFX0xJTktfUFJFUkVO
REVSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX01JQ1JPREFUQSk7JChFTkFCTEVfTU9VU0Vf
Q1VSU09SX1NDQUxFKTskKEVOQUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9TQ1JJUFRFRF9T
UEVFQ0gpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTskKEVOQUJMRV9NRURJQV9DT05UUk9MU19T
Q1JJUFQpOyQoRU5BQkxFX01FRElBX1NPVVJDRSk7JChFTkFCTEVfTUVESUFfU1RBVElTVElDUyk7
JChFTkFCTEVfU1FMX0RBVEFCQVNFKTskKEVOQUJMRV9TVFlMRV9TQ09QRUQpOyQoRU5BQkxFX1NV
QlBJWEVMX0xBWU9VVCk7JChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9W
SURFTyk7JChFTkFCTEVfV0VCX0FVRElPKTskKEVOQUJMRV9XRUJHTCk7JChFTkFCTEVfV0VCWFIp
OyQoRU5BQkxFX1hIUl9USU1FT1VUKTskKEVOQUJMRV9YU0xUKTslKFByZXByb2Nlc3NvckRlZmlu
aXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+CisgICAgICA8UHJlcHJvY2Vzc29yRGVm
aW5pdGlvbnM+JChFTkFCTEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfT1ZFUkZMT1dfU0NST0xM
SU5HX1RPVUNIKTskKEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpOyQoRU5BQkxFX0NIQU5ORUxf
TUVTU0FHSU5HKTskKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKTskKEVOQUJMRV9DU1Nf
SU1BR0VfU0VUKTskKEVOQUJMRV9DU1MzX1RFWFQpOyQoRU5BQkxFX0NTU19CT1hfREVDT1JBVElP
Tl9CUkVBSyk7JChFTkFCTEVfQ1NTX1NIQURFUlMpOyQoRU5BQkxFX0NTU19DT01QT1NJVElORyk7
JChFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQpOyQoRU5BQkxFX0NTU19TSEFQRV9JTlNJREUp
OyQoRU5BQkxFX0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVFJBTlNJVElPTlNfVU5QUkVGSVhF
RCk7JChFTkFCTEVfQ1VSU09SX1ZJU0lCSUxJVFkpOyQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFO
RExFUik7JChFTkFCTEVfREFSS19NT0RFX0NTUyk7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5BQkxF
X0RBVEFMSVNUX0VMRU1FTlQpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVf
RElSRUNUT1JZX1VQTE9BRCk7JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9GRVRD
SF9BUEkpOyQoRU5BQkxFX0ZJTEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSk7JChF
TkFCTEVfR0FNRVBBRCk7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJR0hfRFBJX0NB
TlZBUyk7JChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUik7JChFTkFCTEVfSU5QVVRfU1BFRUNIKTsk
KEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpOyQoRU5BQkxFX0lOUFVUX1RZUEVfREFURVRJTUVMT0NB
TCk7JChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCk7JChFTkFCTEVfSU5QVVRfVFlQRV9USU1FKTsk
KEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspOyQoRU5BQkxFX0xFR0FDWV9FTkNSWVBURURfTUVESUEp
OyQoRU5BQkxFX0xJTktfUFJFUkVOREVSKTskKEVOQUJMRV9NQVRITUwpOyQoRU5BQkxFX01JQ1JP
REFUQSk7JChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKTskKEVOQUJMRV9OT1RJRklDQVRJT05T
KTskKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpOyQoRU5BQkxFX1NIQVJFRF9XT1JLRVJTKTskKEVO
QUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpOyQoRU5BQkxFX01FRElBX1NPVVJDRSk7JChFTkFC
TEVfTUVESUFfU1RBVElTVElDUyk7JChFTkFCTEVfU1FMX0RBVEFCQVNFKTskKEVOQUJMRV9TVFlM
RV9TQ09QRUQpOyQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCk7JChFTkFCTEVfU1ZHX0RPTV9PQkpD
X0JJTkRJTkdTKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VCX0FVRElPKTskKEVOQUJMRV9X
RUJHTCk7JChFTkFCTEVfV0VCWFIpOyQoRU5BQkxFX1hIUl9USU1FT1VUKTskKEVOQUJMRV9YU0xU
KTslKFByZXByb2Nlc3NvckRlZmluaXRpb25zKTwvUHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+CiAg
ICAgPC9DbENvbXBpbGU+CiAgIDwvSXRlbURlZmluaXRpb25Hcm91cD4KICAgPEl0ZW1Hcm91cD4K
QEAgLTE4MiwxMCArMTgxLDYgQEAKICAgICAgIDxWYWx1ZT4kKEVOQUJMRV9ISUdIX0RQSV9DQU5W
QVMpPC9WYWx1ZT4KICAgICAgIDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50
VmFyaWFibGU+CiAgICAgPC9CdWlsZE1hY3JvPgotICAgIDxCdWlsZE1hY3JvIEluY2x1ZGU9IkVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFIj4KLSAgICAgIDxWYWx1ZT4kKEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFKTwvVmFsdWU+Ci0gICAgICA8RW52aXJvbm1lbnRWYXJpYWJsZT50cnVlPC9FbnZpcm9u
bWVudFZhcmlhYmxlPgotICAgIDwvQnVpbGRNYWNybz4KICAgICA8QnVpbGRNYWNybyBJbmNsdWRl
PSJFTkFCTEVfSU5QVVRfU1BFRUNIIj4KICAgICAgIDxWYWx1ZT4kKEVOQUJMRV9JTlBVVF9TUEVF
Q0gpPC9WYWx1ZT4KICAgICAgIDxFbnZpcm9ubWVudFZhcmlhYmxlPnRydWU8L0Vudmlyb25tZW50
VmFyaWFibGU+CkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxMyBAQAorMjAyMS0wMy0yNiAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBs
ZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFICYgRU5BQkxF
X0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywgaXQgc2VlbXMgbGlrZSBpdCBpcyBvbiBmb3Ig
YWxsIHBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yMjM4MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIFNjcmlwdHMvd2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbToKKyAgICAgICAgUmVtb3ZlIEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VS
UyBmcm9tIEZlYXR1cmVMaXN0LnBtLgorCiAyMDIxLTAzLTI2ICBUeWxlciBXaWxjb2NrICA8dHdp
bGNvLm9AcHJvdG9ubWFpbC5jb20+CiAKICAgICAgICAgRml4IFR5cGVFcnJvcjogQ2FuJ3QgbWl4
IHN0cmluZ3MgYW5kIGJ5dGVzIGluIHBhdGggY29tcG9uZW50cyBpbiBUb29scy9TY3JpcHRzL2R1
bXAtY2xhc3MtbGF5b3V0CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxp
c3QucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0
LnBtCShyZXZpc2lvbiAyNzUxMjMpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVy
ZUxpc3QucG0JKHdvcmtpbmcgY29weSkKQEAgLTk1LDggKzk1LDYgQEAgbXkgKAogICAgICRnZW9s
b2NhdGlvblN1cHBvcnQsCiAgICAgJGdwdVByb2Nlc3NTdXBwb3J0LAogICAgICRnc3RyZWFtZXJH
TFN1cHBvcnQsCi0gICAgJGluZGV4ZWREYXRhYmFzZUluV29ya2Vyc1N1cHBvcnQsCi0gICAgJGlu
ZGV4ZWREYXRhYmFzZVN1cHBvcnQsCiAgICAgJGlucHV0VHlwZUNvbG9yU3VwcG9ydCwKICAgICAk
aW5wdXRUeXBlRGF0ZVN1cHBvcnQsCiAgICAgJGlucHV0VHlwZURhdGV0aW1lbG9jYWxTdXBwb3J0
LApAQCAtMzI3LDEyICszMjUsNiBAQCBteSBAZmVhdHVyZXMgPSAoCiAgICAgeyBvcHRpb24gPT4g
ImdwdS1wcm9jZXNzIiwgZGVzYyA9PiAiVG9nZ2xlIEdQVSBQcm9jZXNzIHN1cHBvcnQiLAogICAg
ICAgZGVmaW5lID0+ICJFTkFCTEVfR1BVX1BST0NFU1MiLCB2YWx1ZSA9PiBcJGdwdVByb2Nlc3NT
dXBwb3J0IH0sCiAKLSAgICB7IG9wdGlvbiA9PiAiaW5kZXhlZC1kYXRhYmFzZSIsIGRlc2MgPT4g
IlRvZ2dsZSBJbmRleGVkIERhdGFiYXNlIHN1cHBvcnQiLAotICAgICAgZGVmaW5lID0+ICJFTkFC
TEVfSU5ERVhFRF9EQVRBQkFTRSIsIHZhbHVlID0+IFwkaW5kZXhlZERhdGFiYXNlU3VwcG9ydCB9
LAotCi0gICAgeyBvcHRpb24gPT4gImluZGV4ZWQtZGF0YWJhc2UtaW4td29ya2VycyIsIGRlc2Mg
PT4gIlRvZ2dsZSBzdXBwb3J0IGZvciBJbmRleGVkIERhdGFiYXNlIGluIHdvcmtlcnMiLAotICAg
ICAgZGVmaW5lID0+ICJFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIiwgdmFsdWUg
PT4gXCRpbmRleGVkRGF0YWJhc2VJbldvcmtlcnNTdXBwb3J0IH0sCi0KICAgICB7IG9wdGlvbiA9
PiAiaW5wdXQtdHlwZS1jb2xvciIsIGRlc2MgPT4gIlRvZ2dsZSBJbnB1dCBUeXBlIENvbG9yIHN1
cHBvcnQiLAogICAgICAgZGVmaW5lID0+ICJFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUiIsIHZhbHVl
ID0+IFwkaW5wdXRUeXBlQ29sb3JTdXBwb3J0IH0sCiAK
</data>
<flag name="commit-queue"
          id="444107"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>424432</attachid>
            <date>2021-03-26 19:27:24 -0700</date>
            <delta_ts>2021-03-28 12:14:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-223810-20210326192723.patch</filename>
            <type>text/plain</type>
            <size>189067</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBA
CisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9J
Tl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5zcGVjdG9yL3Byb3Rv
Y29sL0luZGV4ZWREQi5qc29uOgorICAgICAgICBVcGRhdGUgZm9yIHJlbW92ZSBFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSBjb25kaXRpb25hbC4KKwogMjAyMS0wMy0yNiAgWXVzdWtlIFN1enVraSAg
PHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIFVzZSBBcHBsZUlDVSBTUEkgZm9y
IGNhbm9uaWNhbGl6YXRpb24KSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9pbnNwZWN0b3Iv
cHJvdG9jb2wvSW5kZXhlZERCLmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRD
b3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbmRleGVkREIuanNvbgkocmV2aXNpb24gMjc1MTIzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2luc3BlY3Rvci9wcm90b2NvbC9JbmRleGVkREIuanNv
bgkod29ya2luZyBjb3B5KQpAQCAtMSw2ICsxLDUgQEAKIHsKICAgICAiZG9tYWluIjogIkluZGV4
ZWREQiIsCi0gICAgImNvbmRpdGlvbiI6ICJkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
KSAmJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSIsCiAgICAgImRlYnVnZ2FibGVUeXBlcyI6IFsi
cGFnZSIsICJ3ZWItcGFnZSJdLAogICAgICJ0YXJnZXRUeXBlcyI6IFsicGFnZSJdLAogICAgICJ0
eXBlcyI6IFsKSW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XVEYvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAzLTI2ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtl
IGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtRW5hYmxlLmg6CisgICAgICAgICogd3RmL1Bs
YXRmb3JtRW5hYmxlQ29jb2EuaDoKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RBVEFC
QVNFIGFuZCBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLgorCiAyMDIxLTAzLTI2
ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSBQ
VUlDUXVpY2tib2FyZENvbnRyb2xsZXIgZm9yIHRleHQgaW5wdXQgd2hlbiBIQVZFKFFVSUNLQk9B
UkRfQ09OVFJPTExFUikgaXMgZGVmaW5lZApJbmRleDogU291cmNlL1dURi93dGYvUGxhdGZvcm1F
bmFibGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCShy
ZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNzksMTQgKzI3OSw2IEBACiAjZGVmaW5lIEVOQUJMRV9HRU9MT0NBVElP
TiAwCiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKQotI2Rl
ZmluZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAwCi0jZW5kaWYKLQotI2lmICFkZWZpbmVkKEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCi0jZGVmaW5lIEVOQUJMRV9JTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMgMAotI2VuZGlmCi0KICNpZiAhZGVmaW5lZChFTkFCTEVfSU5Q
VVRfVFlQRV9DT0xPUikKICNkZWZpbmUgRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgMQogI2VuZGlm
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dURi93dGYvUGxhdGZvcm1FbmFibGVDb2NvYS5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybUVuYWJsZUNvY29hLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI0MCwxNCArMjQwLDYgQEAKICNkZWZpbmUgRU5BQkxFX1VJX1BST0NFU1NfUERGX0hVRCAx
CiAjZW5kaWYKIAotI2lmICFkZWZpbmVkKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFKQotI2RlZmlu
ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAxCi0jZW5kaWYKLQotI2lmICFkZWZpbmVkKEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCi0jZGVmaW5lIEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFX0lOX1dPUktFUlMgMQotI2VuZGlmCi0KICNpZiAhZGVmaW5lZChFTkFCTEVfSU5QVVRf
VFlQRV9EQVRFKQogI2RlZmluZSBFTkFCTEVfSU5QVVRfVFlQRV9EQVRFIDEKICNlbmRpZgpJbmRl
eDogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEzIEBACisyMDIxLTAzLTI2ICBTYW0gV2Vpbmln
ICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtl
IGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAmIEVOQUJMRV9J
TkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgorCisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5pZGw6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9ET01XaW5kb3dJbmRleGVkRGF0YWJhc2UuaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9JREJBY3RpdmVET01PYmplY3QuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQkN1cnNvci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGw6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yRGlyZWN0aW9uLmlkbDoKKyAg
ICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuY3BwOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5pZGw6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCRGF0YWJhc2UuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQkRhdGFiYXNlLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2Uu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5j
cHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VJZGVudGlmaWVyLmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJl
cXVlc3QuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFu
ZFZlcnNpb25SZXF1ZXN0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9y
eS5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaWRsOgorICAgICAgICAqIE1vZHVsZXMv
aW5kZXhlZGRiL0lEQkdldEFsbFJlc3VsdC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvSURCR2V0QWxsUmVzdWx0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0
UmVzdWx0LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRSZXN1bHQuaDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvSURCSW5kZXguaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJJbmRleC5pZGw6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5LmNwcDoKKyAg
ICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXkuaDoKKyAgICAgICAgKiBNb2R1bGVzL2lu
ZGV4ZWRkYi9JREJLZXlEYXRhLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlEYXRhLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHA6Cisg
ICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5oOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXlSYW5nZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZURhdGEuY3BwOgor
ICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlRGF0YS5oOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9JREJPYmplY3RTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L0lEQk9iamVjdFN0b3JlLmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVu
REJSZXF1ZXN0LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1
ZXN0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCT3BlbkRCUmVxdWVzdC5pZGw6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCUmVjb3JkSWRlbnRpZmllci5oOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3QuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9J
REJSZXF1ZXN0LmlkbDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0Q29t
cGxldGlvbkV2ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0
Q29tcGxldGlvbkV2ZW50Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNh
Y3Rpb24uY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaWRsOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5pZGw6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvSURCVmFsdWUuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0lE
QlZhbHVlLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2
ZW50LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZl
bnQuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQu
aWRsOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL0luZGV4ZWREQi5oOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL1dvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlLmNwcDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRh
YmFzZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9u
UHJveHkuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0
aW9uUHJveHkuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVj
dGlvblRvU2VydmVyLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURC
Q29ubmVjdGlvblRvU2VydmVyLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50
L0lEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRl
eGVkZGIvY2xpZW50L1RyYW5zYWN0aW9uT3BlcmF0aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQmFja2luZ1N0b3JlLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnREZWxlZ2F0
ZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9u
LmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlv
bi5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9u
Q29udGV4dC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlh
bGl6YXRpb25Db250ZXh0Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lE
QlNlcnZlci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZl
ci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlRW50cnku
Y3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlRW50cnku
aDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmNw
cDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmg6
CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRy
YW5zYWN0aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5
QmFja2luZ1N0b3JlVHJhbnNhY3Rpb24uaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5Q3Vyc29yLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvTWVtb3J5Q3Vyc29yLmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUlEQkJhY2tpbmdTdG9yZS5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9NZW1vcnlJbmRleC5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUluZGV4Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUluZGV4Q3Vyc29yLmNwcDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5SW5kZXhDdXJzb3IuaDoKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5T2JqZWN0U3RvcmUuY3BwOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlPYmplY3RTdG9yZS5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9NZW1vcnlPYmplY3RTdG9yZUN1cnNvci5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmg6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5oOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuY3BwOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaDoKKyAgICAgICAgKiBN
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24uY3BwOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5oOgorICAg
ICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcDoK
KyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU2VydmVyT3BlbkRCUmVxdWVzdC5o
OgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5j
cHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNl
Lmg6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNl
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1
ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmNwcDoKKyAgICAgICAgKiBNb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCQ3Vyc29ySW5mby5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JSZWNvcmQuaDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmNwcDoKKyAgICAgICAgKiBNb2R1
bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb24uaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRXJyb3IuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJvci5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkdldEFsbFJlY29yZHNEYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJHZXRSZWNvcmREYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQkluZGV4SW5mby5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkluZGV4SW5mby5oOgorICAgICAgICAqIE1vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJJdGVyYXRlQ3Vyc29yRGF0YS5jcHA6CisgICAgICAgICogTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXF1ZXN0RGF0YS5jcHA6CisgICAgICAgICogTW9k
dWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmg6CisgICAgICAgICogTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc291cmNlSWRlbnRpZmllci5jcHA6CisgICAgICAgICog
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc291cmNlSWRlbnRpZmllci5oOgorICAgICAg
ICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXN1bHREYXRhLmNwcDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5oOgorICAgICAgICAqIE1v
ZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3BwOgorICAgICAgICAq
IE1vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uaDoKKyAgICAgICAg
KiBNb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwOgorICAgICAgICAqIE1vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JbmRleEtleS5oOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRp
bGl0aWVzLmNwcDoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0aWVzLmg6
CisgICAgICAgICogYmluZGluZ3MvanMvSlNET01Db252ZXJ0SW5kZXhlZERCLmg6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
SlNET01HbG9iYWxPYmplY3Q6OnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6c2NyaXB0TW9kdWxlTG9hZGVyKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9K
U0lEQkN1cnNvckN1c3RvbS5jcHA6CisgICAgICAgICogYmluZGluZ3MvanMvSlNJREJDdXJzb3JX
aXRoVmFsdWVDdXN0b20uY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCSW5kZXhDdXN0
b20uY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCT2JqZWN0U3RvcmVDdXN0b20uY3Bw
OgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSURCUmVxdWVzdEN1c3RvbS5jcHA6CisgICAgICAg
ICogYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmNwcDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuaDoKKyAgICAg
ICAgKiBiaW5kaW5ncy9qcy9KU0lEQlRyYW5zYWN0aW9uQ3VzdG9tLmNwcDoKKyAgICAgICAgKiBi
aW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuY3BwOgorICAgICAgICAqIGJpbmRpbmdz
L2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1ZS5oOgorICAgICAgICAqIGJpbmRpbmdzL2pzL1dlYkNv
cmVKU0NsaWVudERhdGEuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNWTUNsaWVudERhdGE6OkpT
Vk1DbGllbnREYXRhKToKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnREYXRh
Lmg6CisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50OjppZGJDb25uZWN0aW9uUHJveHkpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnNl
dEJhY2tGb3J3YXJkQ2FjaGVTdGF0ZSk6CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAg
ICAgICogZG9tL0VtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oOgorICAgICAgICAqIGRvbS9F
dmVudE5hbWVzLmluOgorICAgICAgICAqIGRvbS9FdmVudFRhcmdldEZhY3RvcnkuaW46CisgICAg
ICAgICogZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaDoKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250
cm9sbGVyOjpjcmVhdGVMYXp5QWdlbnRzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvckluZGV4ZWREQkFnZW50LmNwcDoKKyAgICAgICAgKiBpbnNwZWN0b3IvYWdlbnRzL0lu
c3BlY3RvckluZGV4ZWREQkFnZW50Lmg6CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5j
cHA6CisgICAgICAgICogcGFnZS9EYXRhYmFzZVByb3ZpZGVyLmg6CisgICAgICAgICogcGFnZS9Q
YWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNldFNlc3Npb25JRCk6CisgICAgICAg
IChXZWJDb3JlOjpQYWdlOjpjbGVhcklEQkNvbm5lY3Rpb24pOgorICAgICAgICAqIHBhZ2UvUGFn
ZS5oOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkludGVybmFsczo6bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMgY29uc3QpOgorICAgICAgICAqIHRl
c3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorICAg
ICAgICAqIHdvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyR2xvYmFsU2NvcGU6Oldvcmtlckdsb2JhbFNjb3BlKToKKyAgICAgICAgKFdlYkNvcmU6
Oldvcmtlckdsb2JhbFNjb3BlOjpwcmVwYXJlRm9yRGVzdHJ1Y3Rpb24pOgorICAgICAgICAoV2Vi
Q29yZTo6V29ya2VyR2xvYmFsU2NvcGU6OmlkYkNvbm5lY3Rpb25Qcm94eSk6CisgICAgICAgIChX
ZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6c3RvcEluZGV4ZWREYXRhYmFzZSk6CisgICAgICAg
IChXZWJDb3JlOjpXb3JrZXJHbG9iYWxTY29wZTo6c3VzcGVuZCk6CisgICAgICAgIChXZWJDb3Jl
OjpXb3JrZXJHbG9iYWxTY29wZTo6cmVzdW1lKToKKyAgICAgICAgKiB3b3JrZXJzL1dvcmtlckds
b2JhbFNjb3BlLmg6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJNZXNzYWdpbmdQcm94eS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3JrZXJHbG9i
YWxTY29wZSk6CisgICAgICAgICogd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6V29ya2VyVGhyZWFkOjpXb3JrZXJUaHJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6
V29ya2VyVGhyZWFkOjppZGJDb25uZWN0aW9uUHJveHkpOgorICAgICAgICAqIHdvcmtlcnMvV29y
a2VyVGhyZWFkLmg6CisgICAgICAgICogd29ya2Vycy9zZXJ2aWNlL2NvbnRleHQvU2VydmljZVdv
cmtlclRocmVhZFByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmlkYkNvbm5lY3Rpb25Qcm94
eSk6CisgICAgICAgICogd29ya2xldHMvV29ya2xldEdsb2JhbFNjb3BlLmg6CisKIDIwMjEtMDMt
MjYgIENocmlzIEZsZWl6YWNoICA8Y2ZsZWl6YWNoQGFwcGxlLmNvbT4KIAogICAgICAgICBBWDog
Y3Jhc2ggYXQgYW9tLmFwcGxlLldlYkNvcmU6IFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlQcm9ncmVz
c0luZGljYXRvcjo6ZWxlbWVudCBjb25zdApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5pZGwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93K0luZGV4ZWREYXRhYmFzZS5p
ZGwJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0RPTVdpbmRvdytJbmRleGVkRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw3ICsy
Nyw2IEBACiAvLyBodHRwczovL3czYy5naXRodWIuaW8vSW5kZXhlZERCLyNmYWN0b3J5LWludGVy
ZmFjZQogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1lcmdlZCB3aXRoIFdvcmtlckdsb2JhbFNj
b3BlK0luZGV4ZWREYXRhYmFzZS5pZGwgaW50byBhIG5ldyBXaW5kb3dPcldvcmtlckdsb2JhbFNj
b3BlK0luZGV4ZWREYXRhYmFzZS5pZGwgdG8gbWF0Y2ggdGhlIHNwZWMuCiBbCi0gICAgQ29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBJbXBsZW1lbnRlZEJ5PURPTVdpbmRvd0luZGV4
ZWREYXRhYmFzZQogXSBwYXJ0aWFsIGludGVyZmFjZSBET01XaW5kb3cgewogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBJREJGYWN0b3J5IGluZGV4ZWREQjsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFi
YXNlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvRE9NV2luZG93SW5kZXhlZERhdGFiYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYs
OCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkRPTVdpbmRvd0luZGV4
ZWREYXRhYmFzZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJET01XaW5kb3cuaCIKICNpbmNsdWRlICJEYXRhYmFzZVByb3ZpZGVyLmgiCiAjaW5jbHVkZSAi
RG9jdW1lbnQuaCIKQEAgLTkzLDUgKzkxLDMgQEAgSURCRmFjdG9yeSogRE9NV2luZG93SW5kZXhl
ZERhdGFiYXNlOjppbgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0RPTVdpbmRvd0luZGV4ZWREYXRhYmFzZS5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9ET01XaW5k
b3dJbmRleGVkRGF0YWJhc2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
RE9NV2luZG93UHJvcGVydHkuaCIKICNpbmNsdWRlICJTdXBwbGVtZW50YWJsZS5oIgogCkBAIC01
Myw1ICs1MSwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkFjdGl2ZURPTU9iamVjdC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkFjdGl2ZURPTU9iamVjdC5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJBY3RpdmVE
T01PYmplY3QuaAkod29ya2luZyBjb3B5KQpAQCAtMjksOCArMjksNiBAQAogI2luY2x1ZGUgIlNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQuaCIKICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFz
cyBJREJBY3RpdmVET01PYmplY3QgOiBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKQEAgLTkyLDUg
KzkwLDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCQ3Vy
c29yLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJp
bmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZS5oIgogI2luY2x1ZGUgIklE
QkdldFJlc3VsdC5oIgpAQCAtMzg4LDUgKzM4NiwzIEBAIHZvaWQgSURCQ3Vyc29yOjpjbGVhclBy
ZWZldGNoZWRSZWNvcmRzKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYg
Ly8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJDdXJzb3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29yRGlyZWN0
aW9uLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgpAQCAtMTMzLDUgKzEzMSwzIEBAIGlu
bGluZSBJREJDdXJzb3JEaXJlY3Rpb24gSURCQ3Vyc29yOjpkaXIKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3IuaWRsCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvci5pZGwJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNv
ci5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29u
ZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBDdXN0b21Ub0pTT2JqZWN0LAogICAgIEpT
Q3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLApJbmRleDogU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yRGlyZWN0aW9uLmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JEaXJl
Y3Rpb24uaWRsCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJDdXJzb3JEaXJlY3Rpb24uaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsy
NCw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiBdIGVu
dW0gSURCQ3Vyc29yRGlyZWN0aW9uIHsKICAgICAibmV4dCIsCiAgICAgIm5leHR1bmlxdWUiLApJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVl
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJD
dXJzb3JXaXRoVmFsdWUuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCQ3Vyc29y
V2l0aFZhbHVlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0hlYXBJbmxpbmVzLmg+CiAjaW5jbHVkZSA8d3RmL0lzb01hbGxvY0lu
bGluZXMuaD4KIApAQCAtNTgsNSArNTYsMyBAQCBJREJDdXJzb3JXaXRoVmFsdWU6OklEQkN1cnNv
cldpdGhWYWx1ZShJCiBJREJDdXJzb3JXaXRoVmFsdWU6On5JREJDdXJzb3JXaXRoVmFsdWUoKSA9
IGRlZmF1bHQ7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCQ3Vyc29yV2l0aFZhbHVlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkN1cnNvcldpdGhWYWx1ZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNpbmNsdWRlIDx3
dGYvVHlwZUNhc3RzLmg+CiAKQEAgLTUyLDUgKzUwLDMgQEAgcHJpdmF0ZToKIFNQRUNJQUxJWkVf
VFlQRV9UUkFJVFNfQkVHSU4oV2ViQ29yZTo6SURCQ3Vyc29yV2l0aFZhbHVlKQogICAgIHN0YXRp
YyBib29sIGlzVHlwZShjb25zdCBXZWJDb3JlOjpJREJDdXJzb3ImIGN1cnNvcikgeyByZXR1cm4g
Y3Vyc29yLmlzS2V5Q3Vyc29yV2l0aFZhbHVlKCk7IH0KIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNf
RU5EKCkKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCQ3Vyc29yV2l0aFZhbHVlLmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJDdXJzb3JXaXRoVmFs
dWUuaWRsCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJDdXJzb3JXaXRoVmFsdWUuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNCw3ICsyNCw2
IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgU2tp
cFZUYWJsZVZhbGlkYXRpb24sCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAgRXhwb3Nl
ZD0oV2luZG93LFdvcmtlcikKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkRhdGFiYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9JREJEYXRhYmFzZS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNl
LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkRPTVN0cmlu
Z0xpc3QuaCIKICNpbmNsdWRlICJFdmVudE5hbWVzLmgiCiAjaW5jbHVkZSAiRXZlbnRRdWV1ZS5o
IgpAQCAtNTAxLDUgKzQ5OSwzIEBAIHZvaWQgSURCRGF0YWJhc2U6OmRpZERlbGV0ZUluZGV4SW5m
byhjb24KIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJEYXRhYmFzZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkRhdGFiYXNlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIkV2ZW50VGFyZ2V0LmgiCiAjaW5jbHVkZSAiSURCQWN0aXZlRE9NT2JqZWN0Lmgi
CiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCkBAIC0xMzgsNSArMTM2LDMgQEAgcHJp
dmF0ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCRGF0YWJhc2UuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQkRhdGFiYXNlLmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0y
NSw3ICsyNSw2IEBACiAgKi8KIAogWwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0Us
CiAgICAgQWN0aXZlRE9NT2JqZWN0LAogICAgIFNraXBWVGFibGVWYWxpZGF0aW9uLAogICAgIEV4
cG9zZWQ9KFdpbmRvdyxXb3JrZXIpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJEYXRhYmFzZUlkZW50aWZpZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5jcHAJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNl
SWRlbnRpZmllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUlkZW50aWZpZXIuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiU2VjdXJpdHlPcmlnaW4uaCIKICNp
bmNsdWRlIDx3dGYvRmlsZVN5c3RlbS5oPgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KQEAgLTgwLDUg
Kzc4LDMgQEAgU3RyaW5nIElEQkRhdGFiYXNlSWRlbnRpZmllcjo6bG9nZ2luZ1N0cgogI2VuZGlm
CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJh
c2VJZGVudGlmaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCRGF0YWJhc2VJZGVudGlmaWVyLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlSWRlbnRpZmllci5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJDbGllbnRPcmlnaW4uaCIKICNpbmNsdWRl
ICJTZWN1cml0eU9yaWdpbkRhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdIYXNoLmg+
CkBAIC0xNTIsNSArMTUwLDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgSGFzaFRyYWl0czxXZWJDb3Jl
OjpJRAogdGVtcGxhdGU8PiBzdHJ1Y3QgRGVmYXVsdEhhc2g8V2ViQ29yZTo6SURCRGF0YWJhc2VJ
ZGVudGlmaWVyPiA6IFdlYkNvcmU6OklEQkRhdGFiYXNlSWRlbnRpZmllckhhc2ggeyB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXVEYKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VOYW1lQW5k
VmVyc2lvblJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRGF0YWJhc2VO
YW1lQW5kVmVyc2lvblJlcXVlc3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBA
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lv
blJlcXVlc3QuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAi
SURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5o
IgogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CkBAIC03OCw1ICs3NiwzIEBAIHZv
aWQgSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3Q6OnMKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9u
UmVxdWVzdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0LmgJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkRhdGFiYXNlTmFtZUFuZFZlcnNp
b25SZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBv
bmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkFjdGl2
ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb24uaCIKICNp
bmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTg0LDUgKzgyLDMgQEAgaW5saW5l
IElEQkRhdGFiYXNlTmFtZUFuZFZlcnNpb25SZXF1ZXN0OgogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5o
IgogI2luY2x1ZGUgIklEQkZhY3RvcnkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJJREJCaW5kaW5nVXRpbGl0aWVz
LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCkBAIC0xNzMsNSArMTcxLDMgQEAg
dm9pZCBJREJGYWN0b3J5OjpnZXRBbGxEYXRhYmFzZU5hbWVzKFNjcgogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3RvcnkuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmgJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkZhY3Rv
cnkuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIK
ICNpbmNsdWRlICJKU0RPTVByb21pc2VEZWZlcnJlZC5oIgogI2luY2x1ZGUgPHd0Zi9GdW5jdGlv
bi5oPgpAQCAtODAsNSArNzgsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2Vi
Q29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJGYWN0b3J5LmlkbAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCRmFjdG9yeS5p
ZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbiwKICAgICBF
eHBvc2VkPShXaW5kb3csV29ya2VyKQogXSBpbnRlcmZhY2UgSURCRmFjdG9yeSB7CkBAIC0zNyw3
ICszNiw2IEBACiB9OwogCiBbCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAg
ICBKU0dlbmVyYXRlVG9KU09iamVjdCwKIF0gZGljdGlvbmFyeSBJREJEYXRhYmFzZUluZm8gewog
ICAgIERPTVN0cmluZyBuYW1lOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCR2V0QWxsUmVzdWx0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSURCR2V0QWxsUmVzdWx0LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgPHd0Zi9Dcm9zc1RocmVhZENvcGllci5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoU2V0
Lmg+CiAKQEAgLTg1LDUgKzgzLDMgQEAgVmVjdG9yPFN0cmluZz4gSURCR2V0QWxsUmVzdWx0Ojph
bGxCbG9iRgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQkdldEFsbFJlc3VsdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQkdldEFsbFJlc3VsdC5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJHZXRBbGxSZXN1bHQuaAkod29ya2luZyBjb3B5
KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgogI2luY2x1ZGUgIklEQktleVBh
dGguaCIKICNpbmNsdWRlICJJREJWYWx1ZS5oIgpAQCAtMTAwLDUgKzk4LDMgQEAgYm9vbCBJREJH
ZXRBbGxSZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkdldFJlc3VsdC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVz
dWx0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIklEQkdldFJlc3VsdC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdm9pZCBJREJHZXRSZXN1bHQ6OmRhdGFG
cm9tQnVmZmVyKFNoYXJlZEJ1ZmZlciYgYnVmZmVyKQpAQCAtNjQsNSArNjIsMyBAQCB2b2lkIElE
QkdldFJlc3VsdDo6c2V0VmFsdWUoSURCVmFsdWUmJiB2CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCR2V0UmVzdWx0LmgJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkdldFJlc3Vs
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJzb3JSZWNvcmQu
aCIKICNpbmNsdWRlICJJREJLZXkuaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCkBAIC0xNTks
NSArMTU3LDMgQEAgYm9vbCBJREJHZXRSZXN1bHQ6OmRlY29kZShEZWNvZGVyJiBkZWNvZAogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRl
eC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQkluZGV4LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkluZGV4LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRl
ICJJREJDdXJzb3IuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZS5oIgpAQCAtNDI5LDUgKzQyNywz
IEBAIHZvaWQgSURCSW5kZXg6OmRlcmVmKCkKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJbmRleC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQkluZGV4LmgJKHdvcmtpbmcgY29weSkK
QEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1cnNvci5oIgogI2luY2x1ZGUgIklEQkluZGV4SW5m
by5oIgogI2luY2x1ZGUgIklEQlJlcXVlc3QuaCIKQEAgLTExMCw1ICsxMDgsMyBAQCBwcml2YXRl
OgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJJ
bmRleC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCSW5kZXguaWRsCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJJbmRleC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI5LDcgKzI5LDYgQEAg
dHlwZWRlZiAoRE9NU3RyaW5nIG9yIHNlcXVlbmNlPERPTVN0cmluZwogCiBbCiAgICAgQWN0aXZl
RE9NT2JqZWN0LAotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgR2VuZXJh
dGVJc1JlYWNoYWJsZT1JbXBsLAogICAgIEpTQ3VzdG9tTWFya0Z1bmN0aW9uLAogICAgIFNraXBW
VGFibGVWYWxpZGF0aW9uLApJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
SURCS2V5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9JREJLZXkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCS2V5LmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleURhdGEuaCIKICNpbmNsdWRlIDxKYXZh
U2NyaXB0Q29yZS9BcnJheUJ1ZmZlclZpZXcuaD4KICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9K
U0FycmF5QnVmZmVyLmg+CkBAIC0xNjAsNSArMTU4LDMgQEAgU3RyaW5nIElEQktleTo6bG9nZ2lu
Z1N0cmluZygpIGNvbnN0CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleS5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXku
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSW5kZXhlZERCLmgiCiAjaW5j
bHVkZSAiVGhyZWFkU2FmZURhdGFCdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgpA
QCAtMjE1LDUgKzIxMywzIEBAIGlubGluZSBpbnQgY29tcGFyZUJpbmFyeUtleURhdGEoY29uc3Qg
VGgKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJL
ZXlEYXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJLZXlEYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvSURCS2V5RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2
LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIktleWVkQ29kaW5nLmgiCiAj
aW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1N0
cmluZ0NvbmNhdGVuYXRlTnVtYmVycy5oPgpAQCAtNTA0LDUgKzUwMiwzIEBAIHNpemVfdCBJREJL
ZXlEYXRhOjpzaXplKCkgY29uc3QKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJLZXlEYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvSURCS2V5RGF0YS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlEYXRhLmgJKHdvcmtpbmcgY29weSkK
QEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleS5oIgogI2luY2x1ZGUgPHd0Zi9TdGRTZXQuaD4K
ICNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgpAQCAtMzA4LDUgKzMwNiwzIEBAIE9wdGlvbmFsPElE
QktleURhdGE+IElEQktleURhdGE6OmRlY29kZSgKIHVzaW5nIElEQktleURhdGFTZXQgPSBTdGRT
ZXQ8SURCS2V5RGF0YT47CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCS2V5UGF0aC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCS2V5UGF0aC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVBhdGguY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNSw4ICsyNSw2IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogCiAjaW5jbHVkZSA8
d3RmL0FTQ0lJQ1R5cGUuaD4KQEAgLTI0OSw1ICsyNDcsMyBAQCBTdHJpbmcgbG9nZ2luZ1N0cmlu
Zyhjb25zdCBJREJLZXlQYXRoJiBwCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UGF0aC5oCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlQYXRoLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTI2LDggKzI2LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtNTgsNSArNTYs
MyBAQCBTdHJpbmcgbG9nZ2luZ1N0cmluZyhjb25zdCBJREJLZXlQYXRoJik7CiAjZW5kaWYKIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5jcHAJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIklEQktleVJhbmdlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJLZXkuaCIKICNpbmNs
dWRlICJJREJLZXlEYXRhLmgiCkBAIC0xNjMsNSArMTYxLDMgQEAgRXhjZXB0aW9uT3I8Ym9vbD4g
SURCS2V5UmFuZ2U6OmluY2x1ZGVzKAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaAkocmV2aXNpb24gMjc1MTIzKQorKysg
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2UuaAkod29ya2luZyBj
b3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKICNpbmNsdWRlICJTY3Jp
cHRXcmFwcGFibGUuaCIKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgpAQCAtNzcsNSArNzUs
MyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlLmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJLZXlSYW5nZS5p
ZGwJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQktleVJhbmdlLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjQsNyArMjQsNiBAQAogICovCiAK
IFsKLSAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFLAogICAgIEltcGxlbWVudGF0aW9u
TGFja3NWVGFibGUsCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKIF0gaW50ZXJmYWNlIElE
QktleVJhbmdlIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktl
eVJhbmdlRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCS2V5UmFuZ2VEYXRhLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQktl
eVJhbmdlRGF0YS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJJREJLZXkuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTI3LDUgKzEyNSwzIEBAIFN0
cmluZyBJREJLZXlSYW5nZURhdGE6OmxvZ2dpbmdTdHJpbmcoKSAKICNlbmRpZgogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdlRGF0YS5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQktleVJhbmdl
RGF0YS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJLZXlSYW5nZURhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAog
CiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVk
ZSAiSURCS2V5RGF0YS5oIgogI2luY2x1ZGUgIklEQktleVJhbmdlLmgiCiAKQEAgLTEzMyw1ICsx
MzEsMyBAQCBib29sIElEQktleVJhbmdlRGF0YTo6ZGVjb2RlKERlY29kZXImIGRlCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9i
amVjdFN0b3JlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0U3RvcmUuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NU3RyaW5nTGlz
dC5oIgogI2luY2x1ZGUgIkRvY3VtZW50LmgiCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGll
cy5oIgpAQCAtNzY3LDUgKzc2NSwzIEBAIHZvaWQgSURCT2JqZWN0U3RvcmU6OmRlcmVmKCkKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPYmplY3RT
dG9yZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
Qk9iamVjdFN0b3JlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL0lEQk9iamVjdFN0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIkFjdGl2ZURPTU9iamVjdC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAj
aW5jbHVkZSAiSURCQ3Vyc29yRGlyZWN0aW9uLmgiCkBAIC0xNDEsNSArMTM5LDMgQEAgcHJpdmF0
ZToKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
T2JqZWN0U3RvcmUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0lEQk9iamVjdFN0b3JlLmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCT2JqZWN0U3RvcmUuaWRsCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSw3ICsyOSw2IEBAIHR5cGVkZWYgKERPTVN0cmluZyBvciBzZXF1ZW5jZTxET01TdHJp
bmcKIAogWwogICAgIEFjdGl2ZURPTU9iamVjdCwKLSAgICBDb25kaXRpb25hbD1JTkRFWEVEX0RB
VEFCQVNFLAogICAgIEdlbmVyYXRlSXNSZWFjaGFibGU9SW1wbCwKICAgICBKU0N1c3RvbU1hcmtG
dW5jdGlvbiwKICAgICBTa2lwVlRhYmxlVmFsaWRhdGlvbiwKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQk9wZW5EQlJlcXVlc3QuY3BwCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVu
REJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUg
ImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQk9wZW5EQlJlcXVlc3QuaCIKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0aW9uLmgiCiAjaW5jbHVkZSAi
RXZlbnROYW1lcy5oIgogI2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgpAQCAtMjUxLDUg
KzI0OSwzIEBAIHZvaWQgSURCT3BlbkRCUmVxdWVzdDo6c2V0SXNDb250ZXh0U3VzcGUKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1
ZXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
T3BlbkRCUmVxdWVzdC5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDgg
KzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIklEQlJlcXVl
c3QuaCIKIApAQCAtNzcsNSArNzUsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0LmlkbAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJPcGVuREJSZXF1ZXN0
LmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCT3BlbkRCUmVxdWVzdC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAK
ICAqLwogCiBbCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBKU0dlbmVy
YXRlVG9KU09iamVjdCwKICAgICBKU0dlbmVyYXRlVG9OYXRpdmVPYmplY3QsCiAgICAgU2tpcFZU
YWJsZVZhbGlkYXRpb24sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJSZWNvcmRJZGVudGlmaWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCUmVjb3JkSWRlbnRpZmllci5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZWNvcmRJZGVudGlmaWVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTMxLDggKzMxLDYgQEAKICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5o
PgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIElEQlJlY29yZElkZW50aWZpZXIgOiBw
dWJsaWMgUmVmQ291bnRlZDxJREJSZWNvcmRJZGVudGlmaWVyPiB7CkBAIC03Myw1ICs3MSwzIEBA
IHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL0lEQlJlcXVlc3QuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0lEQlJlcXVlc3QuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlJlcXVlc3Qu
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0
aW9uLmgiCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJFdmVudERpc3BhdGNoZXIuaCIK
QEAgLTU3Miw1ICs1NzAsMyBAQCB2b2lkIElEQlJlcXVlc3Q6OmNsZWFyV3JhcHBlcnMoKQogCiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVl
c3QuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCUmVxdWVzdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFn
bWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJFdmVu
dFRhcmdldC5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbk9yLmgiCiAjaW5jbHVkZSAiSURCQWN0aXZl
RE9NT2JqZWN0LmgiCkBAIC0xOTgsNSArMTk2LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCUmVxdWVzdC5pZGwJ
KHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lE
QlJlcXVlc3QuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yOSw3ICsyOSw2IEBACiAKIFsKICAgICBB
Y3RpdmVET01PYmplY3QsCi0gICAgQ29uZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKICAgICBH
ZW5lcmF0ZUlzUmVhY2hhYmxlPUltcGwsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAg
U2tpcFZUYWJsZVZhbGlkYXRpb24sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmNwcAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
UmVxdWVzdENvbXBsZXRpb25FdmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXF1ZXN0Q29tcGxldGlvbkV2
ZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgPHd0Zi9J
c29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQxLDUgKzM5LDMg
QEAgSURCUmVxdWVzdENvbXBsZXRpb25FdmVudDo6SURCUmVxdWVzdENvbQogfQogCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3RDb21wbGV0aW9u
RXZlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJSZXF1ZXN0Q29tcGxldGlvbkV2ZW50LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlJlcXVlc3RDb21wbGV0aW9uRXZlbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNsdWRlICJJREJS
ZXF1ZXN0LmgiCiAKQEAgLTQ3LDUgKzQ1LDMgQEAgcHJpdmF0ZToKIH07CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9u
LmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvSURCVHJhbnNhY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCVHJhbnNhY3Rpb24uaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRE9NRXhjZXB0aW9uLmgiCiAjaW5j
bHVkZSAiRE9NU3RyaW5nTGlzdC5oIgogI2luY2x1ZGUgIkRPTVdpbmRvdy5oIgpAQCAtMTUxNSw1
ICsxNTEzLDMgQEAgdWludDY0X3QgSURCVHJhbnNhY3Rpb246OmdlbmVyYXRlT3BlcmF0aQogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VHJhbnNhY3Rpb24uaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvSURCVHJhbnNhY3Rpb24uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNpbmNsdWRlICJJREJBY3RpdmVET01PYmplY3QuaCIK
ICNpbmNsdWRlICJJREJFcnJvci5oIgpAQCAtMjg5LDUgKzI4NywzIEBAIHByaXZhdGU6CiB9Owog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0
aW9uLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJUcmFuc2FjdGlvbi5pZGwJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uLmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjYs
NyArMjYsNiBAQAogCiBbCiAgICAgQWN0aXZlRE9NT2JqZWN0LAotICAgIENvbmRpdGlvbmFsPUlO
REVYRURfREFUQUJBU0UsCiAgICAgSlNDdXN0b21NYXJrRnVuY3Rpb24sCiAgICAgU2tpcFZUYWJs
ZVZhbGlkYXRpb24sCiAgICAgRXhwb3NlZD0oV2luZG93LFdvcmtlcikKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5o
CShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9J
REJUcmFuc2FjdGlvbk1vZGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAj
cHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSA8
d3RmL0VudW1UcmFpdHMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTEsNSArNDksMyBA
QCB0ZW1wbGF0ZTw+IHN0cnVjdCBFbnVtVHJhaXRzPFdlYkNvcmU6OklECiB9OwogCiB9IC8vIG5h
bWVzcGFjZSBXVEYKLQotI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9JREJUcmFuc2FjdGlvbk1vZGUuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9kZS5pZGwJKHJldmlzaW9uIDI3NTEy
MykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlRyYW5zYWN0aW9uTW9k
ZS5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTI0LDcgKzI0LDYgQEAKICAqLwogCiBbCi0gICAgQ29u
ZGl0aW9uYWw9SU5ERVhFRF9EQVRBQkFTRSwKIF0gZW51bSBJREJUcmFuc2FjdGlvbk1vZGUgewog
ICAgICJyZWFkb25seSIsCiAgICAgInJlYWR3cml0ZSIsCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWYWx1ZS5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJW
YWx1ZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJTZXJp
YWxpemVkU2NyaXB0VmFsdWUuaCIKICNpbmNsdWRlIDx3dGYvQ3Jvc3NUaHJlYWRUYXNrLmg+CiAK
QEAgLTEwMiw1ICsxMDAsMyBAQCBzaXplX3QgSURCVmFsdWU6OnNpemUoKSBjb25zdAogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL0lEQlZhbHVlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmFsdWUuaAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURC
VmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiVGhyZWFkU2FmZURh
dGFCdWZmZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtODYsNSAr
ODQsMyBAQCBPcHRpb25hbDxJREJWYWx1ZT4gSURCVmFsdWU6OmRlY29kZShEZWNvCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvSURCVmVyc2lvbkNoYW5n
ZUV2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVk
ZSAiSURCVmVyc2lvbkNoYW5nZUV2ZW50LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgPHd0Zi9Jc29NYWxsb2NJbmxpbmVzLmg+CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKQEAgLTU4LDUgKzU2LDMgQEAgRXZlbnRJbnRlcmZhY2UgSURCVmVyc2lvbkNoYW5nZUV2
ZW50OjpldgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL0lEQlZlcnNpb25DaGFuZ2VFdmVudC5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZl
bnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiRXZlbnQuaCIKICNpbmNs
dWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvT3B0aW9uYWwuaD4K
QEAgLTc5LDUgKzc3LDMgQEAgcHJpdmF0ZToKIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQkVHSU4o
V2ViQ29yZTo6SURCVmVyc2lvbkNoYW5nZUV2ZW50KQogICAgIHN0YXRpYyBib29sIGlzVHlwZShj
b25zdCBXZWJDb3JlOjpFdmVudCYgZXZlbnQpIHsgcmV0dXJuIGV2ZW50LmlzVmVyc2lvbkNoYW5n
ZUV2ZW50KCk7IH0KIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfRU5EKCkKLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvSURCVmVyc2lvbkNoYW5nZUV2ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9uQ2hhbmdlRXZlbnQuaWRsCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9JREJWZXJzaW9u
Q2hhbmdlRXZlbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3ICsyNSw2IEBACiAgKi8KIAog
WwotICAgIENvbmRpdGlvbmFsPUlOREVYRURfREFUQUJBU0UsCiAgICAgRXhwb3NlZD0oV2luZG93
LFdvcmtlcikKIF0gaW50ZXJmYWNlIElEQlZlcnNpb25DaGFuZ2VFdmVudCA6IEV2ZW50IHsKICAg
ICBjb25zdHJ1Y3RvcihET01TdHJpbmcgdHlwZSwgb3B0aW9uYWwgSURCVmVyc2lvbkNoYW5nZUV2
ZW50SW5pdCBldmVudEluaXREaWN0KTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL0luZGV4ZWREQi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL0luZGV4ZWREQi5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9JbmRleGVkREIuaAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCAr
MjYsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CiAjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAt
MTYxLDUgKzE1OSwzIEBAIHRlbXBsYXRlPD4gc3RydWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6SW4K
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8gRU5BQkxFRChJTkRFWEVEX0RB
VEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvV29ya2VyR2xv
YmFsU2NvcGUrSW5kZXhlZERhdGFiYXNlLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRs
CShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9X
b3JrZXJHbG9iYWxTY29wZStJbmRleGVkRGF0YWJhc2UuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0y
Nyw3ICsyNyw2IEBACiAvLyBodHRwczovL3czYy5naXRodWIuaW8vSW5kZXhlZERCLyNmYWN0b3J5
LWludGVyZmFjZQogLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIG1lcmdlZCB3aXRoIERPTVdpbmRv
dytJbmRleGVkRGF0YWJhc2UuaWRsIGludG8gYSBuZXcgV2luZG93T3JXb3JrZXJHbG9iYWxTY29w
ZStJbmRleGVkRGF0YWJhc2UuaWRsIHRvIG1hdGNoIHRoZSBzcGVjLgogWwotICAgIENvbmRpdGlv
bmFsPUlOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywKICAgICBJbXBsZW1lbnRlZEJ5PVdvcmtl
ckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNlCiBdIHBhcnRpYWwgaW50ZXJmYWNlIFdvcmtlckds
b2JhbFNjb3BlIHsKICAgICBbU2FtZU9iamVjdF0gcmVhZG9ubHkgYXR0cmlidXRlIElEQkZhY3Rv
cnkgaW5kZXhlZERCOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvV29y
a2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL1dvcmtlckdsb2JhbFNjb3BlSW5kZXhlZERhdGFiYXNl
LmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNiw5ICsyNiw2IEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgotCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKLQogI2luY2x1ZGUgIldvcmtlckdsb2JhbFNj
b3BlSW5kZXhlZERhdGFiYXNlLmgiCiAKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIK
QEAgLTgxLDUgKzc4LDMgQEAgSURCRmFjdG9yeSogV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0
YQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRV9JTl9XT1JLRVJTKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvV29ya2VyR2xvYmFsU2NvcGVJbmRleGVkRGF0YWJhc2UuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWRE
YXRhYmFzZS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9Xb3JrZXJHbG9iYWxTY29wZUluZGV4ZWREYXRhYmFzZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0VfSU5fV09SS0VSUykKLQogI2luY2x1ZGUgIlN1cHBsZW1lbnRhYmxlLmgiCiAjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKQEAgLTU5LDUgKzU3LDMgQEAgcHJpdmF0ZToK
IH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFX0lOX1dPUktFUlMpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblByb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblByb3h5LmNwcAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xp
ZW50L0lEQkNvbm5lY3Rpb25Qcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIK
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5m
by5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VOYW1l
QW5kVmVyc2lvbi5oIgpAQCAtNjQ4LDUgKzY0NiwzIEBAIHZvaWQgSURCQ29ubmVjdGlvblByb3h5
OjpzZXRDb250ZXh0U3VzcGUKIAogfSAvLyBuYW1lc2FwY2UgSURCQ2xpZW50CiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uUHJv
eHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGll
bnQvSURCQ29ubmVjdGlvblByb3h5LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uUHJveHkuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCiAj
aW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvblJlcXVlc3QuaCIKICNpbmNsdWRlICJJ
REJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTE4MSw1ICsxNzksMyBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBJREJDbGllbnQKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25U
b1NlcnZlci5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURCQ29u
bmVjdGlvblRvU2VydmVyLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkNvbm5lY3Rpb25Qcm94eS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlLmgiCiAj
aW5jbHVkZSAiSURCRGF0YWJhc2VOYW1lQW5kVmVyc2lvbi5oIgpAQCAtNTIwLDUgKzUxOCwzIEBA
IHZvaWQgSURCQ29ubmVjdGlvblRvU2VydmVyOjpkaWRHZXRBbGxEYXQKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCQ2xpZW50CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L2NsaWVudC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvSURCQ29ubmVjdGlvblRvU2VydmVyLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVu
dC9JREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSURCQ29ubmVjdGlvblByb3h5LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2Vy
dmVyRGVsZWdhdGUuaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKQEAgLTE1
NSw1ICsxNTMsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJDbGllbnQKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rp
b25Ub1NlcnZlckRlbGVnYXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvY2xpZW50L0lEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGVnYXRlLmgJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9J
REJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsy
NSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvV2Vha1B0
ci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgpAQCAtOTMsNSArOTEsMyBAQCBw
dWJsaWM6CiAKIH0gLy8gbmFtZXNwYWNlIElEQkNsaWVudAogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFu
c2FjdGlvbk9wZXJhdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJUcmFuc2FjdGlvbk9wZXJhdGlvbi5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
Ci0KICNpbmNsdWRlICJJREJDdXJzb3IuaCIKICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9IZWFw
SW5saW5lcy5oPgogCkBAIC01MCw1ICs0OCwzIEBAIFRyYW5zYWN0aW9uT3BlcmF0aW9uOjpUcmFu
c2FjdGlvbk9wZXJhdGkKIAogfSAvLyBuYW1lc3BhY2UgSURCQ2xpZW50CiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVudC9UcmFuc2FjdGlvbk9wZXJhdGlv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL2NsaWVu
dC9UcmFuc2FjdGlvbk9wZXJhdGlvbi5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9jbGllbnQvVHJhbnNhY3Rpb25PcGVyYXRpb24uaAkod29y
a2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVxdWVzdC5oIgogI2luY2x1ZGUg
IklEQlJlcXVlc3REYXRhLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCkBA
IC0xODYsNSArMTg0LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCQ2xpZW50CiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJCYWNr
aW5nU3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvSURCQmFja2luZ1N0b3JlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJCYWNraW5nU3RvcmUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJbmZvLmgiCiAjaW5jbHVk
ZSAiSURCRXJyb3IuaCIKICNpbmNsdWRlICJJbmRleEtleS5oIgpAQCAtMTA2LDUgKzEwNCwzIEBA
IHByb3RlY3RlZDoKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJDb25uZWN0aW9uVG9DbGllbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub0NsaWVudC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmgiCiAjaW5j
bHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgiCiAKQEAgLTIxNCw1ICsyMTIsMyBA
QCB2b2lkIElEQkNvbm5lY3Rpb25Ub0NsaWVudDo6Y29ubmVjdGlvblRvCiAKIH0gLy8gbmFtZXNw
YWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5oCShy
ZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkNvbm5lY3Rpb25Ub0NsaWVudERlbGVnYXRlLmgiCiAjaW5jbHVkZSA8d3RmL0hh
c2hTZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC05NCw1ICs5MiwzIEBAIHByaXZhdGU6
CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCQ29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURC
Q29ubmVjdGlvblRvQ2xpZW50RGVsZWdhdGUuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQkNvbm5lY3Rpb25Ub0NsaWVudERl
bGVnYXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNl
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQlJlc291cmNl
SWRlbnRpZmllci5oIgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3RmL3Rl
eHQvV1RGU3RyaW5nLmg+CkBAIC03Nyw1ICs3NSwzIEBAIHB1YmxpYzoKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbi5jcHAJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJT
ZXJpYWxpemF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjIsMTEgKzIyLDEwIEBACiAgKiBB
UklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GCiAgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KKwog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlNlcmlhbGl6YXRpb24uaCIKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgogI2lu
Y2x1ZGUgIklEQktleVBhdGguaCIKICNpbmNsdWRlICJLZXllZENvZGluZy5oIgpAQCAtNDE5LDUg
KzQxOCwzIEBAIGJvb2wgZGVzZXJpYWxpemVJREJLZXlEYXRhKGNvbnN0IHVpbnQ4X3QKIH0KIAog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2Vy
aWFsaXphdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJpYWxpemF0aW9uLmgJKHdv
cmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleVBhdGguaCIKICNpbmNsdWRl
ICJTaGFyZWRCdWZmZXIuaCIKIApAQCAtNDEsNSArMzksMyBAQCBSZWZQdHI8U2hhcmVkQnVmZmVy
PiBzZXJpYWxpemVJREJLZXlEYXRhCiBib29sIGRlc2VyaWFsaXplSURCS2V5RGF0YShjb25zdCB1
aW50OF90KiBidWZmZXIsIHNpemVfdCBidWZmZXJTaXplLCBJREJLZXlEYXRhJik7CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlhbGl6
YXRpb25Db250ZXh0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNvbnRleHQuY3BwCShyZXZpc2lvbiAyNzUx
MjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFs
aXphdGlvbkNvbnRleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw4ICszMSw2IEBACiAjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSlNPYmplY3RJbmxpbmVzLmg+CiAjaW5jbHVkZSA8cGFsL1Nl
c3Npb25JRC5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogbmFtZXNwYWNlIElEQlNlcnZlciB7CkBAIC0xMDQsNSArMTAyLDMgQEAgSURC
U2VyaWFsaXphdGlvbkNvbnRleHQ6OklEQlNlcmlhbGl6YXRpbwogCiB9IC8vIG5hbWVzcGFjZSBJ
REJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VyaWFsaXphdGlvbkNvbnRleHQu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
SURCU2VyaWFsaXphdGlvbkNvbnRleHQuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcmlhbGl6YXRpb25Db250ZXh0LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkpTSURCU2VyaWFsaXphdGlvbkds
b2JhbE9iamVjdC5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL1N0cm9uZ0lubGluZXMuaD4K
ICNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9TdHJ1Y3R1cmVJbmxpbmVzLmg+CkBAIC02MSw1ICs1
OSwzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2Vy
dmVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJTZXJ2ZXIuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVxdWVzdERhdGEuaCIKICNp
bmNsdWRlICJJREJSZXN1bHREYXRhLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5oIgpAQCAtNzk3LDUg
Kzc5NSwzIEBAIHZvaWQgSURCU2VydmVyOjpzdG9wRGF0YWJhc2VBY3Rpdml0aWVzT24KIAogfSAv
LyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURCU2VydmVyLmgJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSAiU3RvcmFn
ZVF1b3RhTWFuYWdlci5oIgpAQCAtMTM5LDUgKzEzNywzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFt
ZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4
ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZUVudHJ5LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lu
ZGV4VmFsdWVFbnRyeS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJbmRleFZhbHVlRW50cnkuaCIKIAotI2lmIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CkBAIC0yMjgsNSArMjI2LDMgQEAgSW5kZXhWYWx1ZUVudHJ5OjpJdGVy
YXRvciBJbmRleFZhbHVlRW50cgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVFbnRy
eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9JbmRleFZhbHVlRW50cnkuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0luZGV4VmFsdWVFbnRyeS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKQEAgLTk4LDUgKzk2LDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVy
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JbmRl
eFZhbHVlU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9JbmRleFZhbHVlU3RvcmUuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgog
I2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCi0KICNpbmNsdWRlICJJREJFcnJvci5oIgogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5o
IgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKQEAgLTQxNSw1ICs0MTMsMyBAQCBTdHJpbmcgSW5kZXhW
YWx1ZVN0b3JlOjpsb2dnaW5nU3RyaW5nKCkgCiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgog
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhW
YWx1ZVN0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL0luZGV4VmFsdWVTdG9yZS5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSW5kZXhWYWx1ZVN0b3JlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1cnNvckluZm8uaCIKICNpbmNsdWRl
ICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSW5kZXhWYWx1ZUVudHJ5LmgiCkBAIC0xMTQsNSAr
MTEyLDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVz
cGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlCYWNraW5nU3Rv
cmVUcmFuc2FjdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCAr
MjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1lbW9yeUJhY2tpbmdTdG9y
ZVRyYW5zYWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQktleVJhbmdlRGF0YS5oIgogI2luY2x1ZGUgIklEQlZhbHVlLmgiCiAjaW5jbHVkZSAi
SW5kZXhlZERCLmgiCkBAIC0yOTIsNSArMjkwLDMgQEAgdm9pZCBNZW1vcnlCYWNraW5nU3RvcmVU
cmFuc2FjdGlvbjo6ZmluaQogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9y
ZVRyYW5zYWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2VydmVyL01lbW9yeUJhY2tpbmdTdG9yZVRyYW5zYWN0aW9uLmgJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlC
YWNraW5nU3RvcmVUcmFuc2FjdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBA
CiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJJREJEYXRhYmFzZUluZm8uaCIKICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVk
ZSAiSURCVHJhbnNhY3Rpb25JbmZvLmgiCkBAIC0xMDQsNSArMTAyLDMgQEAgcHJpdmF0ZToKIAog
fSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlDdXJzb3IuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlDdXJzb3IuY3BwCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5Q3Vyc29yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNp
bmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgpA
QCAtNjEsNSArNTksMyBAQCBNZW1vcnlDdXJzb3IqIE1lbW9yeUN1cnNvcjo6Y3Vyc29yRm9ySWRl
CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5Q3Vyc29yLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUN1cnNvci5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5Q3Vyc29yLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdt
YSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkN1
cnNvckluZm8uaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNTUsNSArNTMsMyBAQCBwcm90
ZWN0ZWQ6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SURCQmFja2luZ1N0b3JlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJNZW1vcnlJREJCYWNraW5nU3RvcmUuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIklEQkdldEFsbFJl
Y29yZHNEYXRhLmgiCiAjaW5jbHVkZSAiSURCR2V0UmVjb3JkRGF0YS5oIgpAQCAtNjM1LDUgKzYz
MywzIEBAIHZvaWQgTWVtb3J5SURCQmFja2luZ1N0b3JlOjpjbG9zZSgpCiAKIH0gLy8gbmFtZXNw
YWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oCShy
ZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkJhY2tpbmdTdG9yZS5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmll
ci5oIgogI2luY2x1ZGUgIklEQlJlc291cmNlSWRlbnRpZmllci5oIgpAQCAtMTA3LDUgKzEwNSwz
IEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXguY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJ
bmRleC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2
LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJNZW1vcnlJbmRleC5oIgogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJFcnJvci5oIgogI2lu
Y2x1ZGUgIklEQkdldEFsbFJlc3VsdC5oIgogI2luY2x1ZGUgIklEQkdldFJlc3VsdC5oIgpAQCAt
MjY1LDUgKzI2MywzIEBAIE1lbW9yeUluZGV4Q3Vyc29yKiBNZW1vcnlJbmRleDo6bWF5YmVPcGUK
IAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleC5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SW5kZXguaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9u
Y2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCSW5kZXhJ
bmZvLmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KQEAgLTEwOCw1ICsxMDYsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFj
ZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL01lbW9yeUluZGV4Q3Vyc29yLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SW5kZXhDdXJzb3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5SW5kZXhDdXJzb3IuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2lu
Y2x1ZGUgIklEQkdldFJlc3VsdC5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgpAQCAt
MjIyLDUgKzIyMCwzIEBAIHZvaWQgTWVtb3J5SW5kZXhDdXJzb3I6OmluZGV4VmFsdWVDaGFuZ2UK
IAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleEN1cnNvci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJbmRleEN1cnNv
ci5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5SW5kZXhDdXJzb3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiSURCQ3Vyc29ySW5mby5oIgogI2luY2x1ZGUgIkluZGV4VmFsdWVTdG9yZS5oIgog
I2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgpAQCAtNTcsNSArNTUsMyBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmUu
Y3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiTWVtb3J5T2JqZWN0U3RvcmUu
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGlu
Z1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIklEQkVycm9yLmgiCiAjaW5jbHVkZSAiSURCR2V0QWxs
UmVzdWx0LmgiCkBAIC01MTcsNSArNTE1LDMgQEAgdm9pZCBNZW1vcnlPYmplY3RTdG9yZTo6cmVu
YW1lSW5kZXgoTWVtbwogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeU9iamVjdFN0b3JlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSURCT2JqZWN0
U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSAiSW5kZXhLZXkuaCIKQEAgLTE0MSw1ICsxMzksMyBAQCBw
cml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNv
cmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3Iu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgi
CiAjaW5jbHVkZSAiTWVtb3J5T2JqZWN0U3RvcmVDdXJzb3IuaCIKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCR2V0UmVzdWx0LmgiCiAjaW5jbHVkZSAiTG9n
Z2luZy5oIgogI2luY2x1ZGUgIk1lbW9yeU9iamVjdFN0b3JlLmgiCkBAIC0zNTIsNSArMzUwLDMg
QEAgdm9pZCBNZW1vcnlPYmplY3RTdG9yZUN1cnNvcjo6aXRlcmF0ZShjbwogCiB9IC8vIG5hbWVz
cGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeU9iamVjdFN0b3JlQ3Vyc29y
LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9NZW1vcnlPYmplY3RTdG9yZUN1cnNvci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4
ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0Up
Ci0KICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgog
I2luY2x1ZGUgIk1lbW9yeUN1cnNvci5oIgpAQCAtNjksNSArNjcsMyBAQCBwcml2YXRlOgogCiB9
IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlEQkJhY2tp
bmdTdG9yZS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiU1FMaXRl
SURCQmFja2luZ1N0b3JlLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgi
CiAjaW5jbHVkZSAiSURCR2V0QWxsUmVjb3Jkc0RhdGEuaCIKQEAgLTMwODUsNSArMzA4MywzIEBA
IGJvb2wgU1FMaXRlSURCQmFja2luZ1N0b3JlOjpoYXNUcmFuc2FjdGkKIAogfSAvLyBuYW1lc3Bh
Y2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQmFja2luZ1N0b3JlLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZl
ci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBA
QAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSURCQmFja2luZ1N0b3JlLmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJZGVudGlmaWVy
LmgiCiAjaW5jbHVkZSAiSURCRGF0YWJhc2VJbmZvLmgiCkBAIC0yMjgsNSArMjI2LDMgQEAgcHJp
dmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJD
dXJzb3IuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCQ3Vyc29yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYs
OCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNRTGl0ZUlEQkN1cnNv
ci5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJDdXJz
b3JJbmZvLmgiCiAjaW5jbHVkZSAiSURCR2V0UmVzdWx0LmgiCiAjaW5jbHVkZSAiSURCU2VyaWFs
aXphdGlvbi5oIgpAQCAtNzA3LDUgKzcwNSwzIEBAIGludDY0X3QgU1FMaXRlSURCQ3Vyc29yOjpj
dXJyZW50UmVjb3JkUm8KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FM
aXRlSURCQ3Vyc29yLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJDdXJzb3IuaAkod29ya2luZyBjb3B5KQpAQCAt
MjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQotCiAjaW5jbHVkZSAiSURCQ3Vyc29yUmVjb3JkLmgiCiAjaW5jbHVkZSAiSURCSW5kZXhJ
bmZvLmgiCiAjaW5jbHVkZSAiSURCS2V5RGF0YS5oIgpAQCAtMTQzLDUgKzE0MSwzIEBAIHByaXZh
dGU6CiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24uY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJ
REJUcmFuc2FjdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTI1LDggKzI1LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJT
UUxpdGVJREJUcmFuc2FjdGlvbi5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJDdXJzb3JJbmZvLmgiCiAjaW5jbHVkZSAiSW5kZXhlZERCLmgiCiAjaW5j
bHVkZSAiTG9nZ2luZy5oIgpAQCAtMjI1LDUgKzIyMywzIEBAIHZvaWQgU1FMaXRlSURCVHJhbnNh
Y3Rpb246OmFkZFJlbW92ZWRCbG8KIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJUcmFu
c2FjdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9TUUxpdGVJREJUcmFuc2FjdGlvbi5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURCVHJhbnNhY3Rpb24u
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRXJyb3IuaCIKICNpbmNs
dWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbklu
Zm8uaCIKQEAgLTk0LDUgKzkyLDMgQEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2Vy
dmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9T
ZXJ2ZXJPcGVuREJSZXF1ZXN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU2VydmVyT3BlbkRCUmVxdWVzdC5jcHAJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2ZXJP
cGVuREJSZXF1ZXN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNlcnZlck9wZW5EQlJlcXVlc3QuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCUmVzdWx0RGF0YS5oIgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CkBAIC04Nyw1ICs4NSwzIEBAIHZvaWQgU2VydmVyT3BlbkRCUmVx
dWVzdDo6Y29ubmVjdGlvbkNsb3MKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TZXJ2ZXJPcGVuREJS
ZXF1ZXN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL1NlcnZlck9wZW5EQlJlcXVlc3QuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NlcnZlck9wZW5EQlJlcXVlc3QuaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSURCUmVxdWVzdERhdGEuaCIKICNpbmNsdWRlIDx3dGYvSGFzaFNldC5o
PgpAQCAtNzQsNSArNzIsMyBAQCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1
ZUlEQkRhdGFiYXNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2UuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJh
c2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2UuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGllcy5oIgogI2luY2x1ZGUg
IklEQkN1cnNvckluZm8uaCIKICNpbmNsdWRlICJJREJHZXRBbGxSZWNvcmRzRGF0YS5oIgpAQCAt
MTI1MSw1ICsxMjQ5LDMgQEAgUmVmUHRyPFNlcnZlck9wZW5EQlJlcXVlc3Q+IFVuaXF1ZUlEQkRh
dAogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFi
YXNlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsy
NSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0K
ICNpbmNsdWRlICJJREJCYWNraW5nU3RvcmUuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUlkZW50
aWZpZXIuaCIKICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIKQEAgLTE3MSw1ICsxNjksMyBA
QCBwcml2YXRlOgogCiB9IC8vIG5hbWVzcGFjZSBJREJTZXJ2ZXIKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVj
dGlvbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5jcHAJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9VbmlxdWVJREJEYXRh
YmFzZUNvbm5lY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgi
CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkNvbm5lY3Rp
b25Ub0NsaWVudC5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uSW5mby5oIgogI2luY2x1ZGUg
IkxvZ2dpbmcuaCIKQEAgLTIzMyw1ICsyMzEsMyBAQCB2b2lkIFVuaXF1ZUlEQkRhdGFiYXNlQ29u
bmVjdGlvbjo6ZGVsZXRlCiAKIH0gLy8gbmFtZXNwYWNlIElEQlNlcnZlcgogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VD
b25uZWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlQ29ubmVjdGlvbi5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0
YWJhc2VDb25uZWN0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklE
QlNlcnZlci5oIgogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNlLmgiCiAjaW5jbHVkZSA8d3Rm
L0hhc2hNYXAuaD4KQEAgLTEwMSw1ICs5OSwzIEBAIHByaXZhdGU6CiAKIH0gLy8gbmFtZXNwYWNl
IElEQlNlcnZlcgogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJh
bnNhY3Rpb24uY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zZXJ2ZXIvVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbi5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJVbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkl0ZXJhdGVDdXJzb3JEYXRhLmgiCiAjaW5jbHVkZSAi
SURCUmVzdWx0RGF0YS5oIgogI2luY2x1ZGUgIklEQlNlcnZlci5oIgpAQCAtNDE1LDUgKzQxMywz
IEBAIHZvaWQgVW5pcXVlSURCRGF0YWJhc2VUcmFuc2FjdGlvbjo6ZGlkQWMKIAogfSAvLyBuYW1l
c3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NlcnZlci9VbmlxdWVJREJEYXRhYmFzZVRyYW5zYWN0aW9uLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNl
VHJhbnNhY3Rpb24uaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2VydmVyL1VuaXF1ZUlEQkRhdGFiYXNlVHJhbnNhY3Rpb24uaAkod29ya2lu
ZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRXJyb3IuaCIKICNpbmNsdWRlICJJREJU
cmFuc2FjdGlvbkluZm8uaCIKICNpbmNsdWRlIDx3dGYvUmVmLmg+CkBAIC0xMDYsNSArMTA0LDMg
QEAgcHJpdmF0ZToKIAogfSAvLyBuYW1lc3BhY2UgSURCU2VydmVyCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCQ3Vy
c29ySW5mby5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYs
OCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQkN1cnNvckluZm8u
aCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCRGF0YWJh
c2UuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbi5oIgogI2luY2x1ZGUgIkluZGV4ZWREQi5o
IgpAQCAtMTEzLDUgKzExMSwzIEBAIFN0cmluZyBJREJDdXJzb3JJbmZvOjpsb2dnaW5nU3RyaW5n
KCkgY28KICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJDdXJzb3JJbmZvLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvckluZm8uaAkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvcklu
Zm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5UmFuZ2VEYXRh
LmgiCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCiAKQEAgLTEzMyw1ICsxMzEs
MyBAQCBib29sIElEQkN1cnNvckluZm86OmRlY29kZShEZWNvZGVyJiBkZWNvCiB9CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvclJl
Y29yZC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3No
YXJlZC9JREJDdXJzb3JSZWNvcmQuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkN1cnNvclJlY29yZC5oCSh3b3JraW5nIGNv
cHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlEYXRhLmgiCiAjaW5jbHVkZSAiSURCVmFs
dWUuaCIKIApAQCAtNzEsNSArNjksMyBAQCBpbmxpbmUgSURCQ3Vyc29yUmVjb3JkIElEQkN1cnNv
clJlY29yZDo6CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJM
RShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkRhdGFiYXNlSW5mby5jcHAJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJE
YXRhYmFzZUluZm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2IEBACiAKICNpbmNs
dWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBJREJEYXRhYmFzZUluZm86OklEQkRhdGFi
YXNlSW5mbygpCkBAIC0xNzcsNSArMTc1LDMgQEAgdm9pZCBJREJEYXRhYmFzZUluZm86OnNldE1h
eEluZGV4SUQodWludAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZUluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJhc2VJbmZvLmgJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJE
YXRhYmFzZUluZm8uaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21h
IG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCT2Jq
ZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KIApAQCAtMTE2LDUgKzEx
NCwzIEBAIGJvb2wgSURCRGF0YWJhc2VJbmZvOjpkZWNvZGUoRGVjb2RlciYgZGUKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRGF0YWJh
c2VOYW1lQW5kVmVyc2lvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uLmgJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJEYXRh
YmFzZU5hbWVBbmRWZXJzaW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAog
I3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC02Nyw1ICs2
NSwzIEBAIGlubGluZSBJREJEYXRhYmFzZU5hbWVBbmRWZXJzaW9uIElEQkRhdGEKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCRXJyb3Iu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJFcnJvci5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDgg
KzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJFcnJvci5oIgogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJET01FeGNlcHRpb24uaCIK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtNjYsNSArNjQsMyBAQCBSZWZQdHI8RE9NRXhjZXB0
aW9uPiBJREJFcnJvcjo6dG9ET01FeGNlCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQot
I2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkVycm9yLmgJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJFcnJv
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJET01FeGNlcHRpb24uaCIK
ICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CkBAIC05OCw1ICs5NiwzIEBAIGJvb2wgSURCRXJyb3I6OmRlY29kZShEZWNvZGVyJiBkZWNv
ZGVyLCAKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHAJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJHZXRBbGxSZWNvcmRzRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJJREJHZXRBbGxSZWNvcmRzRGF0YS5o
IgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJLZXlSYW5n
ZURhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51bWJlcnMuaD4K
IApAQCAtNTAsNSArNDgsMyBAQCBTdHJpbmcgSURCR2V0QWxsUmVjb3Jkc0RhdGE6OmxvZ2dpbmdT
dHJpCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0QWxsUmVjb3Jkc0RhdGEuaAkocmV2
aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVk
L0lEQkdldEFsbFJlY29yZHNEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAK
IAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1
ZGUgIklEQktleVJhbmdlRGF0YS5oIgogI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgogCkBAIC04
NCw1ICs4MiwzIEBAIGJvb2wgSURCR2V0QWxsUmVjb3Jkc0RhdGE6OmRlY29kZShEZWNvZGUKIH0K
IAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURC
R2V0UmVjb3JkRGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9p
bmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCR2V0UmVjb3JkRGF0
YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJJREJHZXRSZWNvcmREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktleVJhbmdlRGF0YS5oIgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC00Nyw1ICs0NSwzIEBAIFN0cmluZyBJREJHZXRSZWNvcmREYXRhOjpsb2dnaW5n
U3RyaW5nKCkKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJHZXRSZWNvcmREYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkdldFJlY29yZERhdGEuaAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lE
QkdldFJlY29yZERhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJh
Z21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURC
S2V5UmFuZ2VEYXRhLmgiCiAjaW5jbHVkZSA8d3RmL0VudW1UcmFpdHMuaD4KIApAQCAtNzEsNSAr
NjksMyBAQCBib29sIElEQkdldFJlY29yZERhdGE6OmRlY29kZShEZWNvZGVyJiBkCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkluZGV4
SW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0lEQkluZGV4SW5mby5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8uY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSURC
SW5kZXhJbmZvLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUg
PHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlTnVtYmVycy5oPgogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CkBAIC02OSw1ICs2NywzIEBAIFN0cmluZyBJREJJbmRleEluZm86OmNvbmRlbnNlZExvZ2dp
bmdTdHIKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJJbmRleEluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSW5kZXhJbmZvLmgJKHJldmlzaW9uIDI3NTEyMykK
KysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJJbmRleEluZm8u
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCS2V5UGF0aC5oIgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0xMDAsNSArOTgsMyBAQCBib29sIElE
QkluZGV4SW5mbzo6ZGVjb2RlKERlY29kZXImIGRlY29kCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQv
SURCSXRlcmF0ZUN1cnNvckRhdGEuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw2IEBACiAjaW5jbHVkZSAiSURCSXRlcmF0ZUN1cnNv
ckRhdGEuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51bWJlcnMuaD4K
IAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
IElEQkl0ZXJhdGVDdXJzb3JEYXRhIElEQkl0ZXJhdGVDdXJzb3JEYXRhOjppc29sYXRlZENvcHko
KSBjb25zdApAQCAtNDYsNSArNDQsMyBAQCBTdHJpbmcgSURCSXRlcmF0ZUN1cnNvckRhdGE6Omxv
Z2dpbmdTdHJpCiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCSXRlcmF0ZUN1cnNvckRhdGEu
aAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0lEQkl0ZXJhdGVDdXJzb3JEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1
LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIklEQktleURhdGEuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtODQsNSAr
ODIsMyBAQCBib29sIElEQkl0ZXJhdGVDdXJzb3JEYXRhOjpkZWNvZGUoRGVjb2RlCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQk9iamVj
dFN0b3JlSW5mby5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRl
eGVkZGIvc2hhcmVkL0lEQk9iamVjdFN0b3JlSW5mby5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9yZUlu
Zm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw4ICsyNyw2IEBACiAjaW5jbHVkZSAiSURCT2Jq
ZWN0U3RvcmVJbmZvLmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogSURC
T2JqZWN0U3RvcmVJbmZvOjpJREJPYmplY3RTdG9yZUluZm8oKQpAQCAtMTQ3LDUgKzE0NSwzIEBA
IFN0cmluZyBJREJPYmplY3RTdG9yZUluZm86OmNvbmRlbnNlZExvZ2cKICNlbmRpZgogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RT
dG9yZUluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zaGFyZWQvSURCT2JqZWN0U3RvcmVJbmZvLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJPYmplY3RTdG9yZUluZm8uaAko
d29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCSW5kZXhJbmZvLmgiCiAjaW5j
bHVkZSAiSURCS2V5UGF0aC5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CkBAIC0xMDYsNSAr
MTA0LDMgQEAgYm9vbCBJREJPYmplY3RTdG9yZUluZm86OmRlY29kZShEZWNvZGVyJgogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXF1
ZXN0RGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIklEQlJlcXVlc3REYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQog
I2luY2x1ZGUgIklEQkNvbm5lY3Rpb25Ub1NlcnZlci5oIgogI2luY2x1ZGUgIklEQkRhdGFiYXNl
LmgiCiAjaW5jbHVkZSAiSURCT3BlbkRCUmVxdWVzdC5oIgpAQCAtMTU3LDUgKzE1NSwzIEBAIHVp
bnQ2NF90IElEQlJlcXVlc3REYXRhOjpyZXF1ZXN0ZWRWZXJzaW8KIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVxdWVzdERhdGEuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURC
UmVxdWVzdERhdGEuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlcXVlc3REYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1
LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKLQogI2luY2x1ZGUgIklEQkRhdGFiYXNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIklEQlJl
c291cmNlSWRlbnRpZmllci5oIgogI2luY2x1ZGUgIkluZGV4ZWREQi5oIgpAQCAtMTg0LDUgKzE4
MiwzIEBAIGJvb2wgSURCUmVxdWVzdERhdGE6OmRlY29kZShEZWNvZGVyJiBkZWMKIH0KIAogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0Up
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3Vy
Y2VJZGVudGlmaWVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3VyY2VJZGVudGlmaWVyLmNwcAkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc291cmNl
SWRlbnRpZmllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKIAotI2lmIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvQ2xpZW50
LmgiCiAjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRvU2VydmVyLmgiCiAjaW5jbHVkZSAiSURCUmVx
dWVzdC5oIgpAQCAtMTA2LDUgKzEwNCwzIEBAIFN0cmluZyBJREJSZXNvdXJjZUlkZW50aWZpZXI6
OmxvZ2dpbmdTdHIKICNlbmRpZgogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAv
LyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
aW5kZXhlZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzb3VyY2VJZGVudGlm
aWVyLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhl
ZGRiL3NoYXJlZC9JREJSZXNvdXJjZUlkZW50aWZpZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUs
OCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiUHJvY2Vzc0lkZW50aWZpZXIuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9T
dHJpbmdIYXNoLmg+CiAKQEAgLTE1Myw1ICsxNTEsMyBAQCBpbmxpbmUgV2ViQ29yZTo6SURCQ29u
bmVjdGlvbklkZW50aWZpZXIgCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdURgotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2lu
ZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlJlc3VsdERhdGEuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURC
UmVzdWx0RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJJREJSZXN1bHREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIlVuaXF1ZUlEQkRhdGFiYXNlLmgiCiAjaW5jbHVk
ZSAiVW5pcXVlSURCRGF0YWJhc2VDb25uZWN0aW9uLmgiCiAjaW5jbHVkZSAiVW5pcXVlSURCRGF0
YWJhc2VUcmFuc2FjdGlvbi5oIgpAQCAtMjQ2LDUgKzI0NCwzIEBAIGNvbnN0IElEQkdldEFsbFJl
c3VsdCYgSURCUmVzdWx0RGF0YTo6Z2UKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSURCUmVzdWx0RGF0YS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJSZXN1bHREYXRhLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJSZXN1bHREYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3By
YWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklE
QkRhdGFiYXNlSW5mby5oIgogI2luY2x1ZGUgIklEQkVycm9yLmgiCiAjaW5jbHVkZSAiSURCR2V0
QWxsUmVzdWx0LmgiCkBAIC0yNjMsNSArMjYxLDMgQEAgdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRy
YWl0czxXZWJDb3JlOjpJRAogfTsKIAogfSAvLyBuYW1lc3BhY2UgV1RGCi0KLSNlbmRpZiAvLyBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJlZC9JREJUcmFuc2FjdGlvbkluZm8uY3Bw
CShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
aGFyZWQvSURCVHJhbnNhY3Rpb25JbmZvLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYs
NiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uSW5mby5o
IgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJUcmFuc2Fj
dGlvbi5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xMTksNSArMTE3LDMgQEAgU3RyaW5n
IElEQlRyYW5zYWN0aW9uSW5mbzo6bG9nZ2luZ1N0cmluZwogI2VuZGlmCiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlRyYW5zYWN0aW9uSW5m
by5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NoYXJl
ZC9JREJUcmFuc2FjdGlvbkluZm8uaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2hhcmVkL0lEQlRyYW5zYWN0aW9uSW5mby5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJEYXRhYmFzZUluZm8uaCIKICNpbmNsdWRl
ICJJREJSZXNvdXJjZUlkZW50aWZpZXIuaCIKICNpbmNsdWRlICJJREJUcmFuc2FjdGlvbk1vZGUu
aCIKQEAgLTEyOSw1ICsxMjcsMyBAQCBib29sIElEQlRyYW5zYWN0aW9uSW5mbzo6ZGVjb2RlKERl
Y29kZXImCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2hhcmVkL0luZGV4S2V5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAi
SW5kZXhLZXkuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIEluZGV4S2V5OjpJbmRleEtleSgpCkBAIC04NSw1ICs4MywzIEBAIFZlY3Rv
cjxJREJLZXlEYXRhPiBJbmRleEtleTo6bXVsdGlFbnRyeSgKIH0KIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zaGFyZWQvSW5kZXhLZXkuaAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2hh
cmVkL0luZGV4S2V5LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdt
YSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQktl
eURhdGEuaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9WZWN0b3Iu
aD4KQEAgLTUyLDUgKzUwLDMgQEAgcHJpdmF0ZToKIHR5cGVkZWYgSGFzaE1hcDx1aW50NjRfdCwg
SW5kZXhLZXk+IEluZGV4SURUb0luZGV4S2V5TWFwOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9JREJCaW5kaW5nVXRpbGl0
aWVzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcsNiBAQAogCiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIklEQkJp
bmRpbmdVdGlsaXRpZXMuaCIKIAogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKQEAgLTUyMiw1
ICs1MjAsMyBAQCBPcHRpb25hbDxKU0M6OkpTVmFsdWU+IGRlc2VyaWFsaXplSURCVmFsCiB9CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSURCQmluZGluZ1V0aWxpdGll
cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0lEQkJpbmRpbmdV
dGlsaXRpZXMuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSURCQmluZGluZ1V0aWxpdGllcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBA
CiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNs
dWRlICJJREJLZXlQYXRoLmgiCiAjaW5jbHVkZSAiSW5kZXhLZXkuaCIKICNpbmNsdWRlIDx3dGYv
Rm9yd2FyZC5oPgpAQCAtNjYsNSArNjQsMyBAQCBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkpTR2xv
YmFsT2JqZWN0KiwgCiAKIE9wdGlvbmFsPEpTQzo6SlNWYWx1ZT4gZGVzZXJpYWxpemVJREJWYWx1
ZVdpdGhLZXlJbmplY3Rpb24oSlNDOjpKU0dsb2JhbE9iamVjdCYsIGNvbnN0IElEQlZhbHVlJiwg
Y29uc3QgSURCS2V5RGF0YSYsIGNvbnN0IE9wdGlvbmFsPElEQktleVBhdGg+Jik7CiB9Ci0KLSNl
bmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQ29udmVydEluZGV4ZWREQi5oCShyZXZpc2lvbiAyNzUx
MjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRJbmRleGVkREIu
aAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUsNiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxpdGll
cy5oIgogI2luY2x1ZGUgIklETFR5cGVzLmgiCiAjaW5jbHVkZSAiSlNET01Db252ZXJ0QmFzZS5o
IgpAQCAtNjcsNSArNjUsMyBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBKU0NvbnZlcnRlcjxJRExJREJW
YWx1CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmplY3QuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NR2xvYmFsT2JqZWN0LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01HbG9iYWxPYmpl
Y3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yMzYsMTAgKzIzNiw5IEBAIFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIEpTRE9NR2xvYmFsT2JqZWMKICAgICAgICAgcmV0dXJuIGpzQ2FzdDxjb25zdCBK
U1dvcmtlckdsb2JhbFNjb3BlQmFzZSo+KHRoaXMpLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCk7
CiAgICAgaWYgKGluaGVyaXRzPEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZT4odm0oKSkpCiAgICAg
ICAgIHJldHVybiBqc0Nhc3Q8Y29uc3QgSlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlKj4odGhpcykt
PnNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
ICAgICBpZiAoaW5oZXJpdHM8SlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0Pih2bSgpKSkK
ICAgICAgICAgcmV0dXJuIGpzQ2FzdDxjb25zdCBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmpl
Y3QqPih0aGlzKS0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpOwotI2VuZGlmCisKICAgICBkYXRh
TG9nKCJVbmV4cGVjdGVkIGdsb2JhbCBvYmplY3Q6ICIsIEpTVmFsdWUodGhpcyksICJcbiIpOwog
ICAgIFJFTEVBU0VfQVNTRVJUX05PVF9SRUFDSEVEKCk7CiAgICAgcmV0dXJuIG51bGxwdHI7CkBA
IC00NzUsMTAgKzQ3NCw5IEBAIHN0YXRpYyBTY3JpcHRNb2R1bGVMb2FkZXIqIHNjcmlwdE1vZHVs
ZUwKICAgICAgICAgcmV0dXJuICZqc0Nhc3Q8Y29uc3QgSlNXb3JrZXJHbG9iYWxTY29wZUJhc2Uq
PihnbG9iYWxPYmplY3QpLT53cmFwcGVkKCkubW9kdWxlTG9hZGVyKCk7CiAgICAgaWYgKGdsb2Jh
bE9iamVjdC0+aW5oZXJpdHM8SlNXb3JrbGV0R2xvYmFsU2NvcGVCYXNlPih2bSkpCiAgICAgICAg
IHJldHVybiAmanNDYXN0PGNvbnN0IEpTV29ya2xldEdsb2JhbFNjb3BlQmFzZSo+KGdsb2JhbE9i
amVjdCktPndyYXBwZWQoKS5tb2R1bGVMb2FkZXIoKTsKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKICAgICBpZiAoZ2xvYmFsT2JqZWN0LT5pbmhlcml0czxKU0lEQlNlcmlhbGl6YXRpb25H
bG9iYWxPYmplY3Q+KHZtKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0jZW5kaWYKKwogICAg
IGRhdGFMb2coIlVuZXhwZWN0ZWQgZ2xvYmFsIG9iamVjdDogIiwgSlNWYWx1ZShnbG9iYWxPYmpl
Y3QpLCAiXG4iKTsKICAgICBSRUxFQVNFX0FTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIHJldHVy
biBudWxscHRyOwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJDdXJzb3JD
dXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURC
Q3Vyc29yQ3VzdG9tLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNJREJDdXJzb3JDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsy
Niw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNJREJDdXJzb3IuaCIKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVkZSAiSURCQmluZGluZ1V0aWxp
dGllcy5oIgogI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgogI2luY2x1ZGUgIkpTSURCQ3Vyc29y
V2l0aFZhbHVlLmgiCkBAIC03NSw1ICs3MywzIEBAIEpTVmFsdWUgdG9KUyhKU0M6OkpTR2xvYmFs
T2JqZWN0KiBsZXhpY2EKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8g
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0lEQkN1cnNvcldpdGhWYWx1ZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJREJDdXJzb3JXaXRoVmFsdWVDdXN0b20uY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQkN1cnNvcldpdGhW
YWx1ZUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRl
ICJjb25maWcuaCIKICNpbmNsdWRlICJKU0lEQkN1cnNvcldpdGhWYWx1ZS5oIgogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJCaW5kaW5nVXRpbGl0aWVzLmgi
CiAjaW5jbHVkZSAiSURCQ3Vyc29yV2l0aFZhbHVlLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENv
cmUvSlNDSW5saW5lcy5oPgpAQCAtNTMsNSArNTEsMyBAQCB2b2lkIEpTSURCQ3Vyc29yV2l0aFZh
bHVlOjp2aXNpdEFkZGl0aW9uCiBERUZJTkVfVklTSVRfQURESVRJT05BTF9DSElMRFJFTihKU0lE
QkN1cnNvcldpdGhWYWx1ZSk7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNJREJJbmRleEN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNJREJJbmRleEN1c3RvbS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCSW5kZXhDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSlNJREJJ
bmRleC5oIgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJJREJJ
bmRleC5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0hlYXBJbmxpbmVzLmg+CiAKQEAgLTQz
LDUgKzQxLDMgQEAgdm9pZCBKU0lEQkluZGV4Ojp2aXNpdEFkZGl0aW9uYWxDaGlsZHJlbgogREVG
SU5FX1ZJU0lUX0FERElUSU9OQUxfQ0hJTERSRU4oSlNJREJJbmRleCk7CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDog
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJPYmplY3RTdG9yZUN1c3RvbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJPYmplY3RTdG9yZUN1
c3RvbS5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSURCT2JqZWN0U3RvcmVDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2
IEBACiAKICNpbmNsdWRlICJjb25maWcuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQotCiAjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCiAjaW5jbHVkZSAiSlNJREJPYmplY3RTdG9y
ZS5oIgogCkBAIC00Niw1ICs0NCwzIEBAIHZvaWQgSlNJREJPYmplY3RTdG9yZTo6dmlzaXRBZGRp
dGlvbmFsQ2gKIERFRklORV9WSVNJVF9BRERJVElPTkFMX0NISUxEUkVOKEpTSURCT2JqZWN0U3Rv
cmUpOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZgpJbmRleDogU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNJREJSZXF1ZXN0Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlJlcXVlc3RDdXN0b20uY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlJlcXVlc3RDdXN0
b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVkZSAiY29uZmln
LmgiCiAjaW5jbHVkZSAiSlNJREJSZXF1ZXN0LmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKLQogI2luY2x1ZGUgIklEQkJpbmRpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJKU0RP
TUNvbnZlcnRJbmRleGVkREIuaCIKICNpbmNsdWRlICJKU0RPTUNvbnZlcnRJbnRlcmZhY2UuaCIK
QEAgLTEwMCw1ICs5OCwzIEBAIHZvaWQgSlNJREJSZXF1ZXN0Ojp2aXNpdEFkZGl0aW9uYWxDaGls
ZHIKIERFRklORV9WSVNJVF9BRERJVElPTkFMX0NISUxEUkVOKEpTSURCUmVxdWVzdCk7CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xv
YmFsT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Qu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw4ICsyOCw2IEBACiAKICNpbmNsdWRlICJXZWJDb3Jl
SlNDbGllbnREYXRhLmgiCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNw
YWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSlNDOwpAQCAtNjYsNSArNjQsMyBAQCB2
b2lkIEpTSURCU2VyaWFsaXphdGlvbkdsb2JhbE9iamVjdDo6ZGVzCiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Qu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlNlcmlhbGl6
YXRpb25HbG9iYWxPYmplY3QuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNJREJTZXJpYWxpemF0aW9uR2xvYmFsT2JqZWN0LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI1LDggKzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIkVtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oIgog
I2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCiAKQEAgLTY0LDUgKzYyLDMgQEAgcHJpdmF0
ZToKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSURCVHJhbnNh
Y3Rpb25DdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTSURCVHJhbnNhY3Rpb25DdXN0b20uY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0lEQlRyYW5zYWN0aW9uQ3VzdG9tLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkpT
SURCVHJhbnNhY3Rpb24uaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5j
bHVkZSAiSlNET01CaW5kaW5nLmgiCiAKIApAQCAtNDMsNSArNDEsMyBAQCB2b2lkIEpTSURCVHJh
bnNhY3Rpb246OnZpc2l0QWRkaXRpb25hbENoCiBERUZJTkVfVklTSVRfQURESVRJT05BTF9DSElM
RFJFTihKU0lEQlRyYW5zYWN0aW9uKTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1NlcmlhbGl6ZWRTY3JpcHRWYWx1
ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXpl
ZFNjcmlwdFZhbHVlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDI4
Nyw3ICs0Mjg3LDYgQEAgdWludDMyX3QgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjp3aXJlRm9ybQog
ICAgIHJldHVybiBDdXJyZW50VmVyc2lvbjsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogVmVjdG9yPFN0cmluZz4gU2VyaWFsaXplZFNjcmlwdFZhbHVlOjpibG9iVVJMc0lzb2xh
dGVkQ29weSgpIGNvbnN0CiB7CiAgICAgVmVjdG9yPFN0cmluZz4gcmVzdWx0OwpAQCAtNDMzOCw2
ICs0MzM3LDQgQEAgSURCVmFsdWUgU2VyaWFsaXplZFNjcmlwdFZhbHVlOjp3cml0ZUJsbwogICAg
IHJldHVybiB2YWx1ZTsKIH0KIAotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQot
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9TZXJpYWxpemVkU2NyaXB0VmFsdWUuaAkocmV2aXNpb24gMjc1MTIzKQorKysg
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2VyaWFsaXplZFNjcmlwdFZhbHVlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTk3LDEyICs5Nyw5IEBAIHB1YmxpYzoKICAgICBjb25zdCBWZWN0b3I8dWlu
dDhfdD4mIGRhdGEoKSBjb25zdCB7IHJldHVybiBtX2RhdGE7IH0KICAgICBib29sIGhhc0Jsb2JV
UkxzKCkgY29uc3QgeyByZXR1cm4gIW1fYmxvYlVSTHMuaXNFbXB0eSgpOyB9CiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBWZWN0b3I8U3RyaW5nPiBibG9iVVJMc0lzb2xhdGVk
Q29weSgpIGNvbnN0OwogICAgIHZvaWQgd3JpdGVCbG9ic1RvRGlza0ZvckluZGV4ZWREQihDb21w
bGV0aW9uSGFuZGxlcjx2b2lkKElEQlZhbHVlJiYpPiYmKTsKICAgICBJREJWYWx1ZSB3cml0ZUJs
b2JzVG9EaXNrRm9ySW5kZXhlZERCU3luY2hyb25vdXNseSgpOwotI2VuZGlmIC8vIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQotCiAgICAgc3RhdGljIFJlZjxTZXJpYWxpemVkU2NyaXB0VmFsdWU+
IGNyZWF0ZUZyb21XaXJlQnl0ZXMoVmVjdG9yPHVpbnQ4X3Q+JiYgZGF0YSkKICAgICB7CiAgICAg
ICAgIHJldHVybiBhZG9wdFJlZigqbmV3IFNlcmlhbGl6ZWRTY3JpcHRWYWx1ZShXVEZNb3ZlKGRh
dGEpKSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3JlSlNDbGllbnRE
YXRhLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9XZWJDb3Jl
SlNDbGllbnREYXRhLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc2LDkg
Kzc2LDcgQEAgSlNWTUNsaWVudERhdGE6OkpTVk1DbGllbnREYXRhKFZNJiB2bSkKICNpZiBFTkFC
TEUoV0VCX0FVRElPKQogICAgICwgbV9oZWFwQ2VsbFR5cGVGb3JKU0F1ZGlvV29ya2xldEdsb2Jh
bFNjb3BlKEpTQzo6SXNvSGVhcENlbGxUeXBlOjpjcmVhdGU8SlNBdWRpb1dvcmtsZXRHbG9iYWxT
Y29wZT4oKSkKICNlbmRpZgotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgICwgbV9o
ZWFwQ2VsbFR5cGVGb3JKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QoSlNDOjpJc29IZWFw
Q2VsbFR5cGU6OmNyZWF0ZTxKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3Q+KCkpCi0jZW5k
aWYKICAgICAsIG1fZG9tQnVpbHRpbkNvbnN0cnVjdG9yU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQo
dm0uaGVhcCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgSlNET01CdWlsdGluQ29uc3RydWN0
b3JCYXNlKQogICAgICwgbV9kb21Db25zdHJ1Y3RvclNwYWNlIElTT19TVUJTUEFDRV9JTklUKHZt
LmhlYXAsIHZtLmNlbGxIZWFwQ2VsbFR5cGUuZ2V0KCksIEpTRE9NQ29uc3RydWN0b3JCYXNlKQog
ICAgICwgbV9kb21XaW5kb3dQcm9wZXJ0aWVzU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVh
cCwgdm0uY2VsbEhlYXBDZWxsVHlwZS5nZXQoKSwgSlNET01XaW5kb3dQcm9wZXJ0aWVzKQpAQCAt
ODYsOSArODQsNyBAQCBKU1ZNQ2xpZW50RGF0YTo6SlNWTUNsaWVudERhdGEoVk0mIHZtKQogICAg
ICwgbV9ydW50aW1lTWV0aG9kU3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVhcCwgdm0uY2Vs
bEhlYXBDZWxsVHlwZS5nZXQoKSwgUnVudGltZU1ldGhvZCkgLy8gSGFzaDoweGY3MGM0YTg1CiAg
ICAgLCBtX3J1bnRpbWVPYmplY3RTcGFjZSBJU09fU1VCU1BBQ0VfSU5JVCh2bS5oZWFwLCBtX3J1
bnRpbWVPYmplY3RIZWFwQ2VsbFR5cGUuZ2V0KCksIEpTQzo6QmluZGluZ3M6OlJ1bnRpbWVPYmpl
Y3QpCiAgICAgLCBtX3dpbmRvd1Byb3h5U3BhY2UgSVNPX1NVQlNQQUNFX0lOSVQodm0uaGVhcCwg
bV93aW5kb3dQcm94eUhlYXBDZWxsVHlwZS5nZXQoKSwgSlNXaW5kb3dQcm94eSkKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICAsIG1faWRiU2VyaWFsaXphdGlvblNwYWNlIElTT19T
VUJTUEFDRV9JTklUKHZtLmhlYXAsIG1faGVhcENlbGxUeXBlRm9ySlNJREJTZXJpYWxpemF0aW9u
R2xvYmFsT2JqZWN0LmdldCgpLCBKU0lEQlNlcmlhbGl6YXRpb25HbG9iYWxPYmplY3QpCi0jZW5k
aWYKICAgICAsIG1fc3Vic3BhY2VzKG1ha2VVbmlxdWU8RE9NSXNvU3Vic3BhY2VzPigpKQogewog
fQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvV2ViQ29yZUpTQ2xpZW50RGF0YS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL1dlYkNvcmVKU0NsaWVu
dERhdGEuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
V2ViQ29yZUpTQ2xpZW50RGF0YS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMDcsOSArMTA3LDggQEAg
cHVibGljOgogI2lmIEVOQUJMRShXRUJfQVVESU8pCiAgICAgc3RkOjp1bmlxdWVfcHRyPEpTQzo6
SGVhcENlbGxUeXBlPiBtX2hlYXBDZWxsVHlwZUZvckpTQXVkaW9Xb3JrbGV0R2xvYmFsU2NvcGU7
CiAjZW5kaWYKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBzdGQ6OnVuaXF1ZV9w
dHI8SlNDOjpIZWFwQ2VsbFR5cGU+IG1faGVhcENlbGxUeXBlRm9ySlNJREJTZXJpYWxpemF0aW9u
R2xvYmFsT2JqZWN0OwotI2VuZGlmCisKIHByaXZhdGU6CiAgICAgSlNDOjpJc29TdWJzcGFjZSBt
X2RvbUJ1aWx0aW5Db25zdHJ1Y3RvclNwYWNlOwogICAgIEpTQzo6SXNvU3Vic3BhY2UgbV9kb21D
b25zdHJ1Y3RvclNwYWNlOwpAQCAtMTE4LDkgKzExNyw3IEBAIHByaXZhdGU6CiAgICAgSlNDOjpJ
c29TdWJzcGFjZSBtX3J1bnRpbWVNZXRob2RTcGFjZTsKICAgICBKU0M6Oklzb1N1YnNwYWNlIG1f
cnVudGltZU9iamVjdFNwYWNlOwogICAgIEpTQzo6SXNvU3Vic3BhY2UgbV93aW5kb3dQcm94eVNw
YWNlOwotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIEpTQzo6SXNvU3Vic3BhY2Ug
bV9pZGJTZXJpYWxpemF0aW9uU3BhY2U7Ci0jZW5kaWYKICAgICBzdGQ6OnVuaXF1ZV9wdHI8RE9N
SXNvU3Vic3BhY2VzPiBtX3N1YnNwYWNlczsKICAgICBWZWN0b3I8SlNDOjpJc29TdWJzcGFjZSo+
IG1fb3V0cHV0Q29uc3RyYWludFNwYWNlczsKIH07CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5j
cHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTExNSw2ICsxMTUsOCBAQAogI2luY2x1ZGUgIkhpZ2hsaWdodFJl
Z2lzdGVyLmgiCiAjaW5jbHVkZSAiSGlzdG9yeS5oIgogI2luY2x1ZGUgIkhpdFRlc3RSZXN1bHQu
aCIKKyNpbmNsdWRlICJJREJDb25uZWN0aW9uUHJveHkuaCIKKyNpbmNsdWRlICJJREJPcGVuREJS
ZXF1ZXN0LmgiCiAjaW5jbHVkZSAiSWRsZUNhbGxiYWNrQ29udHJvbGxlci5oIgogI2luY2x1ZGUg
IkltYWdlQml0bWFwUmVuZGVyaW5nQ29udGV4dC5oIgogI2luY2x1ZGUgIkltYWdlTG9hZGVyLmgi
CkBAIC0yODAsMTEgKzI4Miw2IEBACiAjaW5jbHVkZSAiUmVuZGVyRnVsbFNjcmVlbi5oIgogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLSNpbmNsdWRlICJJREJDb25uZWN0
aW9uUHJveHkuaCIKLSNpbmNsdWRlICJJREJPcGVuREJSZXF1ZXN0LmgiCi0jZW5kaWYKLQogI2lm
IFBMQVRGT1JNKElPU19GQU1JTFkpCiAjaW5jbHVkZSAiQ29udGVudENoYW5nZU9ic2VydmVyLmgi
CiAjaW5jbHVkZSAiQ1NTRm9udFNlbGVjdG9yLmgiCkBAIC0zNDc0LDcgKzM0NzEsNiBAQCB2b2lk
IERvY3VtZW50OjpkaXNhYmxlV2ViQXNzZW1ibHkoY29uc3QgCiAgICAgZnJhbWUoKS0+c2NyaXB0
KCkuZGlzYWJsZVdlYkFzc2VtYmx5KGVycm9yTWVzc2FnZSk7CiB9CiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblByb3h5KiBEb2N1bWVudDo6
aWRiQ29ubmVjdGlvblByb3h5KCkKIHsKICAgICBpZiAoIW1faWRiQ29ubmVjdGlvblByb3h5KSB7
CkBAIC0zNDg1LDcgKzM0ODEsNiBAQCBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogRG9j
dW1lbnQ6CiAgICAgfQogICAgIHJldHVybiBtX2lkYkNvbm5lY3Rpb25Qcm94eS5nZXQoKTsKIH0K
LSNlbmRpZgogCiBTb2NrZXRQcm92aWRlciogRG9jdW1lbnQ6OnNvY2tldFByb3ZpZGVyKCkKIHsK
QEAgLTU0NTUsMTggKzU0NTAsMTQgQEAgdm9pZCBEb2N1bWVudDo6c2V0QmFja0ZvcndhcmRDYWNo
ZVN0YXRlKAogCiAgICAgICAgIGNsZWFyU2hhcmVkT2JqZWN0UG9vbCgpOwogCi0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAgICAgICAgIGlmIChtX2lkYkNvbm5lY3Rpb25Qcm94eSkKICAg
ICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVuZGVkKCpzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCksIHRydWUpOwotI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAg
IGNhc2UgTm90SW5CYWNrRm9yd2FyZENhY2hlOgogICAgICAgICBpZiAoY2hpbGROZWVkc1N0eWxl
UmVjYWxjKCkpCiAgICAgICAgICAgICBzY2hlZHVsZVN0eWxlUmVjYWxjKCk7Ci0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCiAgICAgICAgIGlmIChtX2lkYkNvbm5lY3Rpb25Qcm94eSkKICAg
ICAgICAgICAgIG1faWRiQ29ubmVjdGlvblByb3h5LT5zZXRDb250ZXh0U3VzcGVuZGVkKCpzY3Jp
cHRFeGVjdXRpb25Db250ZXh0KCksIGZhbHNlKTsKLSNlbmRpZgogICAgICAgICBicmVhazsKICAg
ICBjYXNlIEFib3V0VG9FbnRlckJhY2tGb3J3YXJkQ2FjaGU6CiAgICAgICAgIGJyZWFrOwpJbmRl
eDogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvZG9tL0RvY3VtZW50LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3Jl
L2RvbS9Eb2N1bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MDEsOSArNzAxLDcgQEAgcHVibGlj
OgogICAgIHZvaWQgZGlzYWJsZUV2YWwoY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpIGZpbmFs
OwogICAgIHZvaWQgZGlzYWJsZVdlYkFzc2VtYmx5KGNvbnN0IFN0cmluZyYgZXJyb3JNZXNzYWdl
KSBmaW5hbDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIElEQkNsaWVudDo6
SURCQ29ubmVjdGlvblByb3h5KiBpZGJDb25uZWN0aW9uUHJveHkoKSBmaW5hbDsKLSNlbmRpZgog
ICAgIFNvY2tldFByb3ZpZGVyKiBzb2NrZXRQcm92aWRlcigpIGZpbmFsOwogICAgIFJlZlB0cjxS
VENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uPiBjcmVhdGVSVENEYXRhQ2hhbm5l
bFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uKCkgZmluYWw7CiAKQEAgLTE5OTQsOSArMTk5Miw3IEBA
IHByaXZhdGU6CiAgICAgVGFyZ2V0Q2xpZW50VG9JZE1hcCBtX2NsaWVudFRvSURNYXA7CiAjZW5k
aWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxJREJDbGllbnQ6
OklEQkNvbm5lY3Rpb25Qcm94eT4gbV9pZGJDb25uZWN0aW9uUHJveHk7Ci0jZW5kaWYKIAogI2lm
IEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCiAgICAgSGFzaE1hcDxTdHJpbmcsIFJlZjxIVE1M
QXR0YWNobWVudEVsZW1lbnQ+PiBtX2F0dGFjaG1lbnRJZGVudGlmaWVyVG9FbGVtZW50TWFwOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvZG9tL0VtcHR5U2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2RvbS9FbXB0eVNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0VtcHR5U2NyaXB0
RXhlY3V0aW9uQ29udGV4dC5oCSh3b3JraW5nIGNvcHkpCkBAIC01Nyw5ICs1Nyw3IEBAIHB1Ymxp
YzoKICAgICB2b2lkIGRpc2FibGVFdmFsKGNvbnN0IFN0cmluZyYpIGZpbmFsIHsgfTsKICAgICB2
b2lkIGRpc2FibGVXZWJBc3NlbWJseShjb25zdCBTdHJpbmcmKSBmaW5hbCB7IH07CiAKLSNpZiBF
TkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94
eSogaWRiQ29ubmVjdGlvblByb3h5KCkgZmluYWwgeyByZXR1cm4gbnVsbHB0cjsgfQotI2VuZGlm
CiAgICAgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyKCkgZmluYWwgeyByZXR1cm4gbnVs
bHB0cjsgfQogCiAgICAgdm9pZCBhZGRDb25zb2xlTWVzc2FnZShzdGQ6OnVuaXF1ZV9wdHI8SW5z
cGVjdG9yOjpDb25zb2xlTWVzc2FnZT4mJikgZmluYWwgeyB9CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9kb20vRXZlbnROYW1lcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZl
bnROYW1lcy5pbgkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50
TmFtZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTcxLDcgKzcxLDcgQEAgU3RvcmFnZUV2ZW50CiBT
VkdFdmVudHMgaW50ZXJmYWNlTmFtZT1FdmVudAogU1ZHWm9vbUV2ZW50CiBTVkdab29tRXZlbnRz
IGludGVyZmFjZU5hbWU9U1ZHWm9vbUV2ZW50Ci1JREJWZXJzaW9uQ2hhbmdlRXZlbnQgY29uZGl0
aW9uYWw9SU5ERVhFRF9EQVRBQkFTRQorSURCVmVyc2lvbkNoYW5nZUV2ZW50CiBUb3VjaEV2ZW50
IGNvbmRpdGlvbmFsPVRPVUNIX0VWRU5UUwogRGV2aWNlTW90aW9uRXZlbnQgY29uZGl0aW9uYWw9
REVWSUNFX09SSUVOVEFUSU9OCiBEZXZpY2VPcmllbnRhdGlvbkV2ZW50IGNvbmRpdGlvbmFsPURF
VklDRV9PUklFTlRBVElPTgpJbmRleDogU291cmNlL1dlYkNvcmUvZG9tL0V2ZW50VGFyZ2V0RmFj
dG9yeS5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJnZXRGYWN0
b3J5LmluCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vRXZlbnRUYXJn
ZXRGYWN0b3J5LmluCSh3b3JraW5nIGNvcHkpCkBAIC0xNCwxMCArMTQsMTAgQEAgRE9NV2luZG93
CiBFdmVudFNvdXJjZQogRmlsZVJlYWRlcgogRm9udEZhY2VTZXQKLUlEQkRhdGFiYXNlIGNvbmRp
dGlvbmFsPUlOREVYRURfREFUQUJBU0UKLUlEQk9wZW5EQlJlcXVlc3QgY29uZGl0aW9uYWw9SU5E
RVhFRF9EQVRBQkFTRQotSURCUmVxdWVzdCBjb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFCi1J
REJUcmFuc2FjdGlvbiBjb25kaXRpb25hbD1JTkRFWEVEX0RBVEFCQVNFCitJREJEYXRhYmFzZQor
SURCT3BlbkRCUmVxdWVzdAorSURCUmVxdWVzdAorSURCVHJhbnNhY3Rpb24KIE1lZGlhQ29udHJv
bGxlciBjb25kaXRpb25hbD1WSURFTwogTWVkaWFEZXZpY2VzIGNvbmRpdGlvbmFsPU1FRElBX1NU
UkVBTQogTWVkaWFLZXlTZXNzaW9uIGNvbmRpdGlvbmFsPUVOQ1JZUFRFRF9NRURJQQpJbmRleDog
U291cmNlL1dlYkNvcmUvZG9tL1NjcmlwdEV4ZWN1dGlvbkNvbnRleHQuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCShyZXZpc2lvbiAy
NzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RXhlY3V0aW9uQ29udGV4dC5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xMDksOSArMTA5LDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9p
ZCBkaXNhYmxlRXZhbChjb25zdCBTdHJpbmcmIGVycm9yTWVzc2FnZSkgPSAwOwogICAgIHZpcnR1
YWwgdm9pZCBkaXNhYmxlV2ViQXNzZW1ibHkoY29uc3QgU3RyaW5nJiBlcnJvck1lc3NhZ2UpID0g
MDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZpcnR1YWwgSURCQ2xpZW50
OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSgpID0gMDsKLSNlbmRpZgor
CiAgICAgdmlydHVhbCBTb2NrZXRQcm92aWRlciogc29ja2V0UHJvdmlkZXIoKSA9IDA7CiAKICAg
ICB2aXJ0dWFsIFJlZlB0cjxSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uPiBj
cmVhdGVSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWN0aW9uKCkgeyByZXR1cm4gbnVs
bHB0cjsgfQpJbmRleDogU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNvbnRyb2xs
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JD
b250cm9sbGVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNzAsOSArMTcw
LDcgQEAgdm9pZCBJbnNwZWN0b3JDb250cm9sbGVyOjpjcmVhdGVMYXp5QWdlbgogICAgIG1fYWdl
bnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvcldvcmtlckFnZW50PihwYWdlQ29udGV4dCkp
OwogICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvckRPTVN0b3JhZ2VBZ2Vu
dD4ocGFnZUNvbnRleHQpKTsKICAgICBtX2FnZW50cy5hcHBlbmQobWFrZVVuaXF1ZTxJbnNwZWN0
b3JEYXRhYmFzZUFnZW50PihwYWdlQ29udGV4dCkpOwotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIG1fYWdlbnRzLmFwcGVuZChtYWtlVW5pcXVlPEluc3BlY3RvckluZGV4ZWREQkFn
ZW50PihwYWdlQ29udGV4dCkpOwotI2VuZGlmCiAKICAgICBhdXRvIHNjcmlwdFByb2ZpbGVyQWdl
bnRQdHIgPSBtYWtlVW5pcXVlPEluc3BlY3RvclNjcmlwdFByb2ZpbGVyQWdlbnQ+KHBhZ2VDb250
ZXh0KTsKICAgICBtX2luc3RydW1lbnRpbmdBZ2VudHMtPnNldFBlcnNpc3RlbnRTY3JpcHRQcm9m
aWxlckFnZW50KHNjcmlwdFByb2ZpbGVyQWdlbnRQdHIuZ2V0KCkpOwpJbmRleDogU291cmNlL1dl
YkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVkREJBZ2VudC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVk
REJBZ2VudC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9hZ2VudHMvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0z
Miw4ICszMiw2IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5k
ZXhlZERCQWdlbnQuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAjaW5jbHVk
ZSAiQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnMuaCIKICNpbmNsdWRlICJET01TdHJpbmdMaXN0Lmgi
CiAjaW5jbHVkZSAiRE9NV2luZG93LmgiCkBAIC03NDAsNCArNzM4LDMgQEAgdm9pZCBJbnNwZWN0
b3JJbmRleGVkREJBZ2VudDo6Y2xlYXJPYmplYwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
Ci0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL0luc3BlY3RvckluZGV4ZWREQkFnZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2FnZW50cy9JbnNwZWN0b3JJbmRleGVkREJBZ2Vu
dC5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRz
L0luc3BlY3RvckluZGV4ZWREQkFnZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTMxLDggKzMxLDYg
QEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogI2lu
Y2x1ZGUgIkluc3BlY3RvcldlYkFnZW50QmFzZS5oIgogI2luY2x1ZGUgPEphdmFTY3JpcHRDb3Jl
L0luc3BlY3RvckJhY2tlbmREaXNwYXRjaGVycy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgpAQCAtNzIsNSArNzAsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291
cmNlL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE2
MCw3ICsxNjAsNiBAQCBwcml2YXRlOgogfTsKIAogY2xhc3MgRW1wdHlEYXRhYmFzZVByb3ZpZGVy
IGZpbmFsIDogcHVibGljIERhdGFiYXNlUHJvdmlkZXIgewotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogICAgIHN0cnVjdCBFbXB0eUlEQkNvbm5lY3Rpb25Ub1NlcnZlckRlbGV0ZWdhdGUg
ZmluYWwgOiBwdWJsaWMgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXJEZWxlZ2F0ZSB7
CiAgICAgICAgIElEQkNvbm5lY3Rpb25JZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCBmaW5h
bCB7IHJldHVybiB7IH07IH0KICAgICAgICAgdm9pZCBkZWxldGVEYXRhYmFzZShjb25zdCBJREJS
ZXF1ZXN0RGF0YSYpIGZpbmFsIHsgfQpAQCAtMTk4LDcgKzE5Nyw2IEBAIGNsYXNzIEVtcHR5RGF0
YWJhc2VQcm92aWRlciBmaW5hbCA6IHB1YmwKICAgICAgICAgc3RhdGljIGF1dG8mIGVtcHR5Q29u
bmVjdGlvbiA9IElEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyOjpjcmVhdGUoZW1wdHlE
ZWxlZ2F0ZS5nZXQoKSkubGVha1JlZigpOwogICAgICAgICByZXR1cm4gZW1wdHlDb25uZWN0aW9u
OwogICAgIH0KLSNlbmRpZgogfTsKIAogY2xhc3MgRW1wdHlEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dCBmaW5hbCA6IHB1YmxpYyBEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCB7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL0RhdGFiYXNlUHJvdmlkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL0RhdGFiYXNlUHJvdmlkZXIuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYkNvcmUvcGFnZS9EYXRhYmFzZVByb3ZpZGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDEw
ICs0MCw3IEBAIGNsYXNzIElEQkNvbm5lY3Rpb25Ub1NlcnZlcjsKIGNsYXNzIFdFQkNPUkVfRVhQ
T1JUIERhdGFiYXNlUHJvdmlkZXIgOiBwdWJsaWMgUmVmQ291bnRlZDxEYXRhYmFzZVByb3ZpZGVy
PiB7CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+RGF0YWJhc2VQcm92aWRlcigpOwotCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgdmlydHVhbCBJREJDbGllbnQ6OklEQkNvbm5lY3Rp
b25Ub1NlcnZlciYgaWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQQUw6OlNl
c3Npb25JRCYpID0gMDsKLSNlbmRpZgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wYWdlL1BhZ2UuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS9w
YWdlL1BhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Miw2ICs3Miw3IEBACiAjaW5jbHVkZSAi
SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQuaCIKICNpbmNsdWRlICJIaXN0b3J5Q29udHJvbGxl
ci5oIgogI2luY2x1ZGUgIkhpc3RvcnlJdGVtLmgiCisjaW5jbHVkZSAiSURCQ29ubmVjdGlvblRv
U2VydmVyLmgiCiAjaW5jbHVkZSAiSW1hZ2VPdmVybGF5Q29udHJvbGxlci5oIgogI2luY2x1ZGUg
Ikluc3BlY3RvckNsaWVudC5oIgogI2luY2x1ZGUgIkluc3BlY3RvckNvbnRyb2xsZXIuaCIKQEAg
LTE2MywxMCArMTY0LDYgQEAKICNpbmNsdWRlICJTZXJ2aWNlc092ZXJsYXlDb250cm9sbGVyLmgi
CiAjZW5kaWYKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotI2luY2x1ZGUgIklEQkNv
bm5lY3Rpb25Ub1NlcnZlci5oIgotI2VuZGlmCi0KICNpZiBFTkFCTEUoV0VCR0wpCiAjaW5jbHVk
ZSAiV2ViR0xTdGF0ZVRyYWNrZXIuaCIKICNlbmRpZgpAQCAtMjg4MiwxMCArMjg3OSw4IEBAIHZv
aWQgUGFnZTo6c2V0U2Vzc2lvbklEKFBBTDo6U2Vzc2lvbklEIHMKICAgICBBU1NFUlQobV9zZXNz
aW9uSUQgPT0gUEFMOjpTZXNzaW9uSUQ6OmxlZ2FjeVByaXZhdGVTZXNzaW9uSUQoKSB8fCBtX3Nl
c3Npb25JRCA9PSBQQUw6OlNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25JRCgpKTsKICAgICBBU1NF
UlQoc2Vzc2lvbklEID09IFBBTDo6U2Vzc2lvbklEOjpsZWdhY3lQcml2YXRlU2Vzc2lvbklEKCkg
fHwgc2Vzc2lvbklEID09IFBBTDo6U2Vzc2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCkpOwogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgaWYgKHNlc3Npb25JRCAhPSBtX3Nlc3Np
b25JRCkKICAgICAgICAgbV9pZGJDb25uZWN0aW9uVG9TZXJ2ZXIgPSBudWxscHRyOwotI2VuZGlm
CiAKICAgICBpZiAoc2Vzc2lvbklEICE9IG1fc2Vzc2lvbklEICYmIG1fc2Vzc2lvblN0b3JhZ2Up
CiAgICAgICAgIG1fc2Vzc2lvblN0b3JhZ2UtPnNldFNlc3Npb25JREZvclRlc3Rpbmcoc2Vzc2lv
bklEKTsKQEAgLTMwNDEsNyArMzAzNiw2IEBAIHZvaWQgUGFnZTo6c2V0QWxsb3dzTWVkaWFEb2N1
bWVudElubGluZVAKIAogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIElE
QkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyJiBQYWdlOjppZGJDb25uZWN0aW9uKCkKIHsK
ICAgICBpZiAoIW1faWRiQ29ubmVjdGlvblRvU2VydmVyKQpAQCAtMzA1OSw3ICszMDUzLDYgQEAg
dm9pZCBQYWdlOjpjbGVhcklEQkNvbm5lY3Rpb24oKQogewogICAgIG1faWRiQ29ubmVjdGlvblRv
U2VydmVyID0gbnVsbHB0cjsKIH0KLSNlbmRpZgogCiAjaWYgRU5BQkxFKFJFU09VUkNFX1VTQUdF
KQogdm9pZCBQYWdlOjpzZXRSZXNvdXJjZVVzYWdlT3ZlcmxheVZpc2libGUoYm9vbCB2aXNpYmxl
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvcGFnZS9QYWdlLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC03NDUsMTEgKzc0NSw5IEBAIHB1YmxpYzoK
ICAgICBib29sIGFsbG93c1BsYXliYWNrQ29udHJvbHNGb3JBdXRvcGxheWluZ0F1ZGlvKCkgY29u
c3QgeyByZXR1cm4gbV9hbGxvd3NQbGF5YmFja0NvbnRyb2xzRm9yQXV0b3BsYXlpbmdBdWRpbzsg
fQogICAgIHZvaWQgc2V0QWxsb3dzUGxheWJhY2tDb250cm9sc0ZvckF1dG9wbGF5aW5nQXVkaW8o
Ym9vbCBhbGxvd3NQbGF5YmFja0NvbnRyb2xzRm9yQXV0b3BsYXlpbmdBdWRpbykgeyBtX2FsbG93
c1BsYXliYWNrQ29udHJvbHNGb3JBdXRvcGxheWluZ0F1ZGlvID0gYWxsb3dzUGxheWJhY2tDb250
cm9sc0ZvckF1dG9wbGF5aW5nQXVkaW87IH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQogICAgIElEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyJiBpZGJDb25uZWN0aW9uKCk7
CiAgICAgV0VCQ09SRV9FWFBPUlQgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXIqIG9w
dGlvbmFsSURCQ29ubmVjdGlvbigpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgY2xlYXJJREJD
b25uZWN0aW9uKCk7Ci0jZW5kaWYKIAogICAgIHZvaWQgc2V0U2hvd0FsbFBsdWdpbnMoYm9vbCBz
aG93QWxsKSB7IG1fc2hvd0FsbFBsdWdpbnMgPSBzaG93QWxsOyB9CiAgICAgYm9vbCBzaG93QWxs
UGx1Z2lucygpIGNvbnN0OwpAQCAtMTAzMyw5ICsxMDMxLDcgQEAgcHJpdmF0ZToKICAgICBjb25z
dCBzdGQ6OnVuaXF1ZV9wdHI8UGFnZURlYnVnZ2FibGU+IG1faW5zcGVjdG9yRGVidWdnYWJsZTsK
ICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgUmVmUHRyPElEQkNs
aWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyPiBtX2lkYkNvbm5lY3Rpb25Ub1NlcnZlcjsKLSNl
bmRpZgogCiAgICAgSGFzaFNldDxTdHJpbmc+IG1fc2VlblBsdWdpbnM7CiAgICAgSGFzaFNldDxT
dHJpbmc+IG1fc2Vlbk1lZGlhRW5naW5lczsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3Rpbmcv
SW50ZXJuYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVy
bmFscy5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTA3LDYgKzEwNyw4IEBACiAjaW5jbHVkZSAi
SGlzdG9yeUNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJIaXN0b3J5SXRlbS5oIgogI2luY2x1ZGUg
IkhpdFRlc3RSZXN1bHQuaCIKKyNpbmNsdWRlICJJREJSZXF1ZXN0LmgiCisjaW5jbHVkZSAiSURC
VHJhbnNhY3Rpb24uaCIKICNpbmNsdWRlICJJbnNwZWN0b3JDbGllbnQuaCIKICNpbmNsdWRlICJJ
bnNwZWN0b3JDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yRGVidWdnYWJsZVR5cGUu
aCIKQEAgLTMwMywxMSArMzA1LDYgQEAKICNpbmNsdWRlICJQb2ludGVyTG9ja0NvbnRyb2xsZXIu
aCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0jaW5jbHVkZSAiSURC
UmVxdWVzdC5oIgotI2luY2x1ZGUgIklEQlRyYW5zYWN0aW9uLmgiCi0jZW5kaWYKLQogI2lmIFVT
RShRVUlDS19MT09LKQogI2luY2x1ZGUgIkxlZ2FjeVByZXZpZXdMb2FkZXIuaCIKICNpbmNsdWRl
ICJNb2NrUHJldmlld0xvYWRlckNsaWVudC5oIgpAQCAtMjYyOSwxMiArMjYyNiwxMCBAQCBFeGNl
cHRpb25Pcjx1bnNpZ25lZD4gSW50ZXJuYWxzOjpjb3VudEZpCiAgICAgcmV0dXJuIGRvY3VtZW50
LT5wYWdlKCktPmNvdW50RmluZE1hdGNoZXModGV4dCwgcGFyc2VkT3B0aW9ucy5yZWxlYXNlUmV0
dXJuVmFsdWUoKSwgMTAwMCk7CiB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIHVu
c2lnbmVkIEludGVybmFsczo6bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnMoKSBjb25zdAogewogICAg
IHJldHVybiBJREJUcmFuc2FjdGlvbjo6bnVtYmVyT2ZJREJUcmFuc2FjdGlvbnM7CiB9Ci0jZW5k
aWYKIAogdW5zaWduZWQgSW50ZXJuYWxzOjpudW1iZXJPZkxpdmVOb2RlcygpIGNvbnN0CiB7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0OSw5
ICs0NDksNyBAQCBwdWJsaWM6CiAgICAgRXhjZXB0aW9uT3I8dm9pZD4gaW5zZXJ0QXV0aG9yQ1NT
KGNvbnN0IFN0cmluZyYpIGNvbnN0OwogICAgIEV4Y2VwdGlvbk9yPHZvaWQ+IGluc2VydFVzZXJD
U1MoY29uc3QgU3RyaW5nJikgY29uc3Q7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
ICAgICB1bnNpZ25lZCBudW1iZXJPZklEQlRyYW5zYWN0aW9ucygpIGNvbnN0OwotI2VuZGlmCiAK
ICAgICB1bnNpZ25lZCBudW1iZXJPZkxpdmVOb2RlcygpIGNvbnN0OwogICAgIHVuc2lnbmVkIG51
bWJlck9mTGl2ZURvY3VtZW50cygpIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmlkbAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC01MzMsNyArNTMzLDcgQEAgZW51bSBUcmVl
VHlwZSB7CiAgICAgdW5kZWZpbmVkIGJlZ2luU2ltdWxhdGVkTWVtb3J5UHJlc3N1cmUoKTsKICAg
ICB1bmRlZmluZWQgZW5kU2ltdWxhdGVkTWVtb3J5UHJlc3N1cmUoKTsKIAotICAgIFtDb25kaXRp
b25hbD1JTkRFWEVEX0RBVEFCQVNFXSB1bnNpZ25lZCBsb25nIG51bWJlck9mSURCVHJhbnNhY3Rp
b25zKCk7CisgICAgdW5zaWduZWQgbG9uZyBudW1iZXJPZklEQlRyYW5zYWN0aW9ucygpOwogCiAg
ICAgdW5zaWduZWQgbG9uZyBudW1iZXJPZkxpdmVOb2RlcygpOwogICAgIHVuc2lnbmVkIGxvbmcg
bnVtYmVyT2ZMaXZlRG9jdW1lbnRzKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dv
cmtlckdsb2JhbFNjb3BlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS93b3JrZXJz
L1dvcmtlckdsb2JhbFNjb3BlLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNv
cmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY3LDkg
KzY3LDcgQEAgV29ya2VyR2xvYmFsU2NvcGU6Oldvcmtlckdsb2JhbFNjb3BlKFdvcgogICAgICwg
bV9pc09ubGluZShwYXJhbXMuaXNPbmxpbmUpCiAgICAgLCBtX3Nob3VsZEJ5cGFzc01haW5Xb3Js
ZENvbnRlbnRTZWN1cml0eVBvbGljeShwYXJhbXMuc2hvdWxkQnlwYXNzTWFpbldvcmxkQ29udGVu
dFNlY3VyaXR5UG9saWN5KQogICAgICwgbV90b3BPcmlnaW4oV1RGTW92ZSh0b3BPcmlnaW4pKQot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgICwgbV9jb25uZWN0aW9uUHJveHkoY29u
bmVjdGlvblByb3h5KQotI2VuZGlmCiAgICAgLCBtX3NvY2tldFByb3ZpZGVyKHNvY2tldFByb3Zp
ZGVyKQogICAgICwgbV9wZXJmb3JtYW5jZShQZXJmb3JtYW5jZTo6Y3JlYXRlKHRoaXMsIHBhcmFt
cy50aW1lT3JpZ2luKSkKICAgICAsIG1fcmVmZXJyZXJQb2xpY3kocGFyYW1zLnJlZmVycmVyUG9s
aWN5KQpAQCAtNzcsMTAgKzc1LDYgQEAgV29ya2VyR2xvYmFsU2NvcGU6Oldvcmtlckdsb2JhbFNj
b3BlKFdvcgogICAgICwgbV93b3JrZXJUeXBlKHBhcmFtcy53b3JrZXJUeXBlKQogICAgICwgbV9j
cmVkZW50aWFscyhwYXJhbXMuY3JlZGVudGlhbHMpCiB7Ci0jaWYgIUVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQotICAgIFVOVVNFRF9QQVJBTShjb25uZWN0aW9uUHJveHkpOwotI2VuZGlmCi0KICAg
ICBpZiAobV90b3BPcmlnaW4tPmhhc1VuaXZlcnNhbEFjY2VzcygpKQogICAgICAgICBvcmlnaW4t
PmdyYW50VW5pdmVyc2FsQWNjZXNzKCk7CiAgICAgaWYgKG1fdG9wT3JpZ2luLT5uZWVkc1N0b3Jh
Z2VBY2Nlc3NGcm9tRmlsZVVSTHNRdWlyaygpKQpAQCAtMTEzLDkgKzEwNyw3IEBAIHZvaWQgV29y
a2VyR2xvYmFsU2NvcGU6OnByZXBhcmVGb3JEZXN0cnUKIHsKICAgICBXb3JrZXJPcldvcmtsZXRH
bG9iYWxTY29wZTo6cHJlcGFyZUZvckRlc3RydWN0aW9uKCk7CiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICBzdG9wSW5kZXhlZERhdGFiYXNlKCk7Ci0jZW5kaWYKIAogICAgIGlm
IChtX2NhY2hlU3RvcmFnZUNvbm5lY3Rpb24pCiAgICAgICAgIG1fY2FjaGVTdG9yYWdlQ29ubmVj
dGlvbi0+Y2xlYXJQZW5kaW5nUmVxdWVzdHMoKTsKQEAgLTE3Miw0MyArMTY0LDI5IEBAIFJlZlB0
cjxSVENEYXRhQ2hhbm5lbFJlbW90ZUhhbmRsZXJDb25uZWMKICAgICByZXR1cm4gY29ubmVjdGlv
bjsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiBJREJDbGllbnQ6OklEQkNv
bm5lY3Rpb25Qcm94eSogV29ya2VyR2xvYmFsU2NvcGU6OmlkYkNvbm5lY3Rpb25Qcm94eSgpCiB7
Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKICAgICByZXR1cm4gbV9j
b25uZWN0aW9uUHJveHkuZ2V0KCk7Ci0jZWxzZQotICAgIHJldHVybiBudWxscHRyOwotI2VuZGlm
CiB9CiAKIHZvaWQgV29ya2VyR2xvYmFsU2NvcGU6OnN0b3BJbmRleGVkRGF0YWJhc2UoKQogewot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMpCiAgICAgaWYgKG1fY29ubmVj
dGlvblByb3h5KQogICAgICAgICBtX2Nvbm5lY3Rpb25Qcm94eS0+Zm9yZ2V0QWN0aXZpdHlGb3JD
dXJyZW50VGhyZWFkKCk7Ci0jZW5kaWYKIH0KIAogdm9pZCBXb3JrZXJHbG9iYWxTY29wZTo6c3Vz
cGVuZCgpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUykKICAgICBp
ZiAobV9jb25uZWN0aW9uUHJveHkpCiAgICAgICAgIG1fY29ubmVjdGlvblByb3h5LT5zZXRDb250
ZXh0U3VzcGVuZGVkKCp0aGlzLCB0cnVlKTsKLSNlbmRpZgogfQogCiB2b2lkIFdvcmtlckdsb2Jh
bFNjb3BlOjpyZXN1bWUoKQogewotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktF
UlMpCiAgICAgaWYgKG1fY29ubmVjdGlvblByb3h5KQogICAgICAgICBtX2Nvbm5lY3Rpb25Qcm94
eS0+c2V0Q29udGV4dFN1c3BlbmRlZCgqdGhpcywgZmFsc2UpOwotI2VuZGlmCiB9CiAKLSNlbmRp
ZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogV29ya2VyTG9jYXRpb24mIFdvcmtlckds
b2JhbFNjb3BlOjpsb2NhdGlvbigpIGNvbnN0CiB7CiAgICAgaWYgKCFtX2xvY2F0aW9uKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyR2xvYmFsU2NvcGUuaAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJHbG9iYWxTY29wZS5oCSh3
b3JraW5nIGNvcHkpCkBAIC02OCwxMSArNjgsOSBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIG9yaWdp
bigpIGNvbnN0OwogICAgIGNvbnN0IFN0cmluZyYgaWRlbnRpZmllcigpIGNvbnN0IHsgcmV0dXJu
IG1faWRlbnRpZmllcjsgfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgSURC
Q2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNvbm5lY3Rpb25Qcm94eSgpIGZpbmFsOwog
ICAgIHZvaWQgc3VzcGVuZCgpIGZpbmFsOwogICAgIHZvaWQgcmVzdW1lKCkgZmluYWw7Ci0jZW5k
aWYKIAogICAgIFdvcmtlckNhY2hlU3RvcmFnZUNvbm5lY3Rpb24mIGNhY2hlU3RvcmFnZUNvbm5l
Y3Rpb24oKTsKICAgICBNZXNzYWdlUG9ydENoYW5uZWxQcm92aWRlciYgbWVzc2FnZVBvcnRDaGFu
bmVsUHJvdmlkZXIoKTsKQEAgLTE1NSw5ICsxNTMsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgdW53
cmFwQ3J5cHRvS2V5KGNvbnN0IFZlY3Rvcjx1aW50OF90PiYgd3JhcHBlZEtleSwgVmVjdG9yPHVp
bnQ4X3Q+JiBrZXkpIGZpbmFsOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFT
RSkKICAgICB2b2lkIHN0b3BJbmRleGVkRGF0YWJhc2UoKTsKLSNlbmRpZgogCiAgICAgVVJMIG1f
dXJsOwogICAgIFN0cmluZyBtX2lkZW50aWZpZXI7CkBAIC0xNzEsOSArMTY3LDcgQEAgcHJpdmF0
ZToKIAogICAgIFJlZjxTZWN1cml0eU9yaWdpbj4gbV90b3BPcmlnaW47CiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKICAgICBSZWZQdHI8SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJv
eHk+IG1fY29ubmVjdGlvblByb3h5OwotI2VuZGlmCiAKICAgICBSZWZQdHI8U29ja2V0UHJvdmlk
ZXI+IG1fc29ja2V0UHJvdmlkZXI7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29y
a2VyTWVzc2FnaW5nUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtl
cnMvV29ya2VyTWVzc2FnaW5nUHJveHkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViQ29yZS93b3JrZXJzL1dvcmtlck1lc3NhZ2luZ1Byb3h5LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtODMsMTEgKzgzLDcgQEAgdm9pZCBXb3JrZXJNZXNzYWdpbmdQcm94eTo6c3RhcnRXb3JrZXJH
bAogICAgIFdvcmtlclRocmVhZFN0YXJ0TW9kZSBzdGFydE1vZGUgPSBtX2luc3BlY3RvclByb3h5
LT53b3JrZXJTdGFydE1vZGUoKm1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dC5nZXQoKSk7CiAgICAg
U3RyaW5nIGlkZW50aWZpZXIgPSBtX2luc3BlY3RvclByb3h5LT5pZGVudGlmaWVyKCk7CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJREJDbGllbnQ6OklEQkNvbm5lY3Rpb25Q
cm94eSogcHJveHkgPSBkb2N1bWVudC5pZGJDb25uZWN0aW9uUHJveHkoKTsKLSNlbHNlCi0gICAg
SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIHByb3h5ID0gbnVsbHB0cjsKLSNlbmRpZgog
CiAgICAgU29ja2V0UHJvdmlkZXIqIHNvY2tldFByb3ZpZGVyID0gZG9jdW1lbnQuc29ja2V0UHJv
dmlkZXIoKTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3dvcmtlcnMvV29ya2VyVGhyZWFkLmNwcAko
cmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC05MSwxNCArOTEsOSBAQCBXb3JrZXJUaHJlYWQ6Oldvcmtl
clRocmVhZChjb25zdCBXb3JrZXJQCiAgICAgLCBtX3dvcmtlclJlcG9ydGluZ1Byb3h5KHdvcmtl
clJlcG9ydGluZ1Byb3h5KQogICAgICwgbV9ydW50aW1lRmxhZ3MocnVudGltZUZsYWdzKQogICAg
ICwgbV9zdGFydHVwRGF0YShtYWtlVW5pcXVlPFdvcmtlclRocmVhZFN0YXJ0dXBEYXRhPihwYXJh
bXMsIHNvdXJjZUNvZGUsIHN0YXJ0TW9kZSwgdG9wT3JpZ2luKSkKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICAsIG1faWRiQ29ubmVjdGlvblByb3h5KGNvbm5lY3Rpb25Qcm94eSkK
LSNlbmRpZgogICAgICwgbV9zb2NrZXRQcm92aWRlcihzb2NrZXRQcm92aWRlcikKIHsKLSNpZiAh
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0gICAgVU5VU0VEX1BBUkFNKGNvbm5lY3Rpb25Qcm94
eSk7Ci0jZW5kaWYKICAgICArK3dvcmtlclRocmVhZENvdW50ZXI7CiB9CiAKQEAgLTE1OSwxMSAr
MTU0LDcgQEAgdm9pZCBXb3JrZXJUaHJlYWQ6OmV2YWx1YXRlU2NyaXB0SWZOZWNlcwogCiBJREJD
bGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogV29ya2VyVGhyZWFkOjppZGJDb25uZWN0aW9uUHJv
eHkoKQogewotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHJldHVybiBtX2lkYkNv
bm5lY3Rpb25Qcm94eS5nZXQoKTsKLSNlbHNlCi0gICAgcmV0dXJuIG51bGxwdHI7Ci0jZW5kaWYK
IH0KIAogU29ja2V0UHJvdmlkZXIqIFdvcmtlclRocmVhZDo6c29ja2V0UHJvdmlkZXIoKQpJbmRl
eDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9Xb3JrZXJUaHJlYWQuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL1dvcmtlclRocmVhZC5oCSh3b3JraW5nIGNvcHkpCkBA
IC0xMjQsOSArMTI0LDcgQEAgcHJpdmF0ZToKICAgICBOb3RpZmljYXRpb25DbGllbnQqIG1fbm90
aWZpY2F0aW9uQ2xpZW50IHsgbnVsbHB0ciB9OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKICAgICBSZWZQdHI8SURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHk+IG1f
aWRiQ29ubmVjdGlvblByb3h5OwotI2VuZGlmCiAgICAgUmVmUHRyPFNvY2tldFByb3ZpZGVyPiBt
X3NvY2tldFByb3ZpZGVyOwogfTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvd29ya2Vycy9zZXJ2
aWNlL2NvbnRleHQvU2VydmljZVdvcmtlclRocmVhZFByb3h5LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS93b3JrZXJzL3NlcnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFk
UHJveHkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViQ29yZS93b3JrZXJzL3Nl
cnZpY2UvY29udGV4dC9TZXJ2aWNlV29ya2VyVGhyZWFkUHJveHkuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC04MywxMSArODMsNyBAQCBzdGF0aWMgaW5saW5lIFVuaXF1ZVJlZjxQYWdlPiBjcmVhdGVQ
YWdlCiAKIHN0YXRpYyBpbmxpbmUgSURCQ2xpZW50OjpJREJDb25uZWN0aW9uUHJveHkqIGlkYkNv
bm5lY3Rpb25Qcm94eShEb2N1bWVudCYgZG9jdW1lbnQpCiB7Ci0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCiAgICAgcmV0dXJuIGRvY3VtZW50LmlkYkNvbm5lY3Rpb25Qcm94eSgpOwotI2Vs
c2UKLSAgICByZXR1cm4gbnVsbHB0cjsKLSNlbmRpZgogfQogCiBzdGF0aWMgSGFzaFNldDxTZXJ2
aWNlV29ya2VyVGhyZWFkUHJveHkqPiYgYWxsU2VydmljZVdvcmtlclRocmVhZFByb3hpZXMoKQpJ
bmRleDogU291cmNlL1dlYkNvcmUvd29ya2xldHMvV29ya2xldEdsb2JhbFNjb3BlLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvd29ya2xldHMvV29ya2xldEdsb2JhbFNjb3BlLmgJKHJl
dmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJDb3JlL3dvcmtsZXRzL1dvcmtsZXRHbG9iYWxT
Y29wZS5oCSh3b3JraW5nIGNvcHkpCkBAIC05Nyw5ICs5Nyw3IEBAIHByb3RlY3RlZDoKICAgICBX
b3JrbGV0R2xvYmFsU2NvcGUoRG9jdW1lbnQmLCBSZWY8SlNDOjpWTT4mJiwgU2NyaXB0U291cmNl
Q29kZSYmKTsKIAogcHJpdmF0ZToKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBJ
REJDbGllbnQ6OklEQkNvbm5lY3Rpb25Qcm94eSogaWRiQ29ubmVjdGlvblByb3h5KCkgZmluYWwg
eyBBU1NFUlRfTk9UX1JFQUNIRUQoKTsgcmV0dXJuIG51bGxwdHI7IH0KLSNlbmRpZgogCiAgICAg
Ly8gRXZlbnRUYXJnZXQuCiAgICAgRXZlbnRUYXJnZXRJbnRlcmZhY2UgZXZlbnRUYXJnZXRJbnRl
cmZhY2UoKSBjb25zdCBmaW5hbCB7IHJldHVybiBXb3JrbGV0R2xvYmFsU2NvcGVFdmVudFRhcmdl
dEludGVyZmFjZVR5cGU7IH0KSW5kZXg6IFNvdXJjZS9XZWJJbnNwZWN0b3JVSS9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYkluc3BlY3RvclVJL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDE0IEBACisyMDIxLTAzLTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxl
LmNvbT4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTLCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBh
bGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIyMzgxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC4wLmpzb246CisgICAgICAgICogVmVyc2lvbnMv
SW5zcGVjdG9yLWlPUy0xNC41Lmpzb246CisgICAgICAgIFVwZGF0ZSBmb3IgcmVtb3ZlZCBFTkFC
TEVfSU5ERVhFRF9EQVRBQkFTRSBjb25kaXRpb25hbC4KKwogMjAyMS0wMy0yNiAgSmVzc2llIEJl
cmxpbiAgPGpiZXJsaW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBVcGRhdGUgdGhlIEJFRk9SRS9T
SU5DRSwgU1lTVEVNX1ZFUlNJT05fUFJFRklYLCBhbmQgTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VU
IGZsYWdzCkluZGV4OiBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlP
Uy0xNC4wLmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL1ZlcnNpb25z
L0luc3BlY3Rvci1pT1MtMTQuMC5qc29uCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2Vi
SW5zcGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC4wLmpzb24JKHdvcmtpbmcgY29w
eSkKQEAgLTI3MjgsNyArMjcyOCw2IEBACiAsCiB7CiAgICAgImRvbWFpbiI6ICJJbmRleGVkREIi
LAotICAgICJjb25kaXRpb24iOiAiZGVmaW5lZChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJiYg
RU5BQkxFX0lOREVYRURfREFUQUJBU0UiLAogICAgICJkZWJ1Z2dhYmxlVHlwZXMiOiBbInBhZ2Ui
LCAid2ViLXBhZ2UiXSwKICAgICAidGFyZ2V0VHlwZXMiOiBbInBhZ2UiXSwKICAgICAidHlwZXMi
OiBbCkluZGV4OiBTb3VyY2UvV2ViSW5zcGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0x
NC41Lmpzb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkluc3BlY3RvclVJL1ZlcnNpb25zL0lu
c3BlY3Rvci1pT1MtMTQuNS5qc29uCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViSW5z
cGVjdG9yVUkvVmVyc2lvbnMvSW5zcGVjdG9yLWlPUy0xNC41Lmpzb24JKHdvcmtpbmcgY29weSkK
QEAgLTI3NjgsNyArMjc2OCw2IEBACiAsCiB7CiAgICAgImRvbWFpbiI6ICJJbmRleGVkREIiLAot
ICAgICJjb25kaXRpb24iOiAiZGVmaW5lZChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSkgJiYgRU5B
QkxFX0lOREVYRURfREFUQUJBU0UiLAogICAgICJkZWJ1Z2dhYmxlVHlwZXMiOiBbInBhZ2UiLCAi
d2ViLXBhZ2UiXSwKICAgICAidGFyZ2V0VHlwZXMiOiBbInBhZ2UiXSwKICAgICAidHlwZXMiOiBb
CkluZGV4OiBTb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSw2NiBAQAorMjAyMS0wMy0yNiAgU2FtIFdlaW5p
ZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIEVOQUJMRV9JTkRFWEVEX0RB
VEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VSUywgaXQgc2VlbXMgbGlr
ZSBpdCBpcyBvbiBmb3IgYWxsIHBvcnRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMjM4MTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVf
SU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGNvbmRpdGlvbmFscy4KKworICAgICAgICAqIE5l
dHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwOgorICAg
ICAgICAqIE5ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQu
aDoKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmNwcDoK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmg6CisgICAg
ICAgICogTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5tZXNzYWdlcy5pbjoK
KyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5jcHA6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjpjcmVhdGVOZXR3b3JrQ29ubmVjdGlvblRvV2ViUHJvY2Vz
cyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzOjphZGRXZWJzaXRlRGF0YVN0b3Jl
KToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmRlc3Ryb3lTZXNzaW9uKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmZldGNoV2Vic2l0ZURhdGEpOgorICAgICAg
ICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGEpOgorICAgICAgICAo
V2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGFGb3JPcmlnaW5zKToKKyAg
ICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OmRlbGV0ZUFuZFJlc3RyaWN0V2Vic2l0ZURh
dGFGb3JSZWdpc3RyYWJsZURvbWFpbnMpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vz
czo6cmVnaXN0cmFibGVEb21haW5zV2l0aFdlYnNpdGVEYXRhKToKKyAgICAgICAgKFdlYktpdDo6
TmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1c3BlbmQpOgorICAgICAgICAoV2ViS2l0OjpOZXR3
b3JrUHJvY2Vzczo6cmVzdW1lKToKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3M6OnJl
bmFtZU9yaWdpbkluV2Vic2l0ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vz
czo6c3RvcmFnZVF1b3RhTWFuYWdlcik6CisgICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNz
Ojpjb25uZWN0aW9uVG9XZWJQcm9jZXNzQ2xvc2VkKToKKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vz
cy9OZXR3b3JrUHJvY2Vzcy5oOgorICAgICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzczo6U2Vz
c2lvblN0b3JhZ2VRdW90YU1hbmFnZXI6OmlkYlJvb3RQYXRoIGNvbnN0KToKKyAgICAgICAgKiBT
aGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9JREJVdGlsaXRpZXMuY3BwOgorICAgICAgICAqIFNo
YXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5oOgorICAgICAgICAqIFNoYXJl
ZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlJlc3VsdC5jcHA6CisgICAgICAgICogU2hhcmVk
L0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0Lmg6CisgICAgICAgICogU2hhcmVkL1dl
YkNvcmVBcmd1bWVudENvZGVycy5jcHA6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8SURC
S2V5UGF0aD46OmRlY29kZSk6CisgICAgICAgICogU2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVy
cy5oOgorICAgICAgICAqIFNoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzOjplbmNvZGUgY29uc3Qp
OgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVyczo6ZGVjb2RlKToK
KyAgICAgICAgKiBTaGFyZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuaDoKKyAgICAgICAg
KiBVSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6TmV0d29ya1Byb2Nlc3NQcm94eTo6YWRkU2Vzc2lvbik6CisgICAgICAgIChXZWJLaXQ6
Ok5ldHdvcmtQcm9jZXNzUHJveHk6OmNyZWF0ZVN5bUxpbmtGb3JGaWxlVXBncmFkZSk6CisgICAg
ICAgICogVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NQcm94eS5oOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycyk6CisgICAgICAgICogV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5jcHA6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1Nl
cnZlci5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJD
b25uZWN0aW9uVG9TZXJ2ZXIubWVzc2FnZXMuaW46CisgICAgICAgICogV2ViUHJvY2Vzcy9EYXRh
YmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkRhdGFi
YXNlUHJvdmlkZXI6OmlkYkNvbm5lY3Rpb25Ub1NlcnZlckZvclNlc3Npb24pOgorICAgICAgICAq
IFdlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRhdGFiYXNlUHJvdmlkZXIuaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmNwcDoKKyAgICAgICAg
KFdlYktpdDo6TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRSZWNlaXZlTWVzc2FnZSk6Cisg
ICAgICAgIChXZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6ZGlkQ2xvc2UpOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmlkYkNvbm5lY3Rpb25Ub1Nl
cnZlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVj
dGlvbi5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvU3RvcmFnZS9XZWJTV0NvbnRleHRNYW5hZ2Vy
Q29ubmVjdGlvbi5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlNXQ29udGV4dE1hbmFnZXJDb25u
ZWN0aW9uOjppbnN0YWxsU2VydmljZVdvcmtlcik6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6bmV0d29ya1Byb2Nlc3ND
b25uZWN0aW9uQ2xvc2VkKToKKwogMjAyMS0wMy0yNiAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hz
aWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgUFVJQ1F1aWNrYm9hcmRDb250cm9sbGVyIGZv
ciB0ZXh0IGlucHV0IHdoZW4gSEFWRShRVUlDS0JPQVJEX0NPTlRST0xMRVIpIGlzIGRlZmluZWQK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3Mu
Y3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzkyLDkgKzM5Miw3IEBAIHZvaWQg
TmV0d29ya1Byb2Nlc3M6OmNyZWF0ZU5ldHdvcmtDb25uZWMKIAogICAgIG1fc3RvcmFnZU1hbmFn
ZXJTZXQtPmFkZENvbm5lY3Rpb24oY29ubmVjdGlvbi5jb25uZWN0aW9uKCkpOwogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgd2ViSURCU2VydmVyKHNlc3Npb25JRCkuYWRkQ29u
bmVjdGlvbihjb25uZWN0aW9uLmNvbm5lY3Rpb24oKSwgaWRlbnRpZmllcik7Ci0jZW5kaWYKIH0K
IAogdm9pZCBOZXR3b3JrUHJvY2Vzczo6Y2xlYXJDYWNoZWRDcmVkZW50aWFscyhQQUw6OlNlc3Np
b25JRCBzZXNzaW9uSUQpCkBAIC00MTIsOSArNDEwLDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6
YWRkV2Vic2l0ZURhdGFTdG9yZQogCiAgICAgYWRkU2Vzc2lvblN0b3JhZ2VRdW90YU1hbmFnZXIo
c2Vzc2lvbklELCBwYXJhbWV0ZXJzLnBlck9yaWdpblN0b3JhZ2VRdW90YSwgcGFyYW1ldGVycy5w
ZXJUaGlyZFBhcnR5T3JpZ2luU3RvcmFnZVF1b3RhLCBwYXJhbWV0ZXJzLmNhY2hlU3RvcmFnZURp
cmVjdG9yeSwgcGFyYW1ldGVycy5jYWNoZVN0b3JhZ2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUp
OwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgYWRkSW5kZXhlZERhdGFiYXNl
U2Vzc2lvbihzZXNzaW9uSUQsIHBhcmFtZXRlcnMuaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5LCBw
YXJhbWV0ZXJzLmluZGV4ZWREYXRhYmFzZURpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSk7Ci0jZW5k
aWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBhZGRTZXJ2aWNlV29ya2VyU2Vz
c2lvbihzZXNzaW9uSUQsIHBhcmFtZXRlcnMuc2VydmljZVdvcmtlclByb2Nlc3NUZXJtaW5hdGlv
bkRlbGF5RW5hYmxlZCwgV1RGTW92ZShwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRp
b25EaXJlY3RvcnkpLCBwYXJhbWV0ZXJzLnNlcnZpY2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3Rv
cnlFeHRlbnNpb25IYW5kbGUpOwpAQCAtNTU3LDkgKzU1Myw3IEBAIHZvaWQgTmV0d29ya1Byb2Nl
c3M6OmRlc3Ryb3lTZXNzaW9uKFBBTDoKIAogICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQtPnJlbW92
ZShzZXNzaW9uSUQpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgcmVtb3Zl
V2ViSURCU2VydmVySWZQb3NzaWJsZShzZXNzaW9uSUQpOwotI2VuZGlmCiB9CiAKICNpZiBFTkFC
TEUoUkVTT1VSQ0VfTE9BRF9TVEFUSVNUSUNTKQpAQCAtMTUxMiw3ICsxNTA2LDYgQEAgdm9pZCBO
ZXR3b3JrUHJvY2Vzczo6ZmV0Y2hXZWJzaXRlRGF0YShQQQogICAgICAgICBjYWxsYmFja0FnZ3Jl
Z2F0b3ItPm1fd2Vic2l0ZURhdGEuaG9zdE5hbWVzV2l0aEhTVFNDYWNoZSA9IGhvc3ROYW1lc1dp
dGhIU1RTQ2FjaGUoc2Vzc2lvbklEKTsKICNlbmRpZgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCiAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQp
OwogICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhX
ZWJzaXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKICAgICAgICAgd2ViSURCU2Vy
dmVyKHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvJiYgb3Jp
Z2lucykgewpAQCAtMTUyMCw3ICsxNTEzLDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZmV0Y2hX
ZWJzaXRlRGF0YShQQQogICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJz
aXRlRGF0YS5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbnMudGFrZUFueSgpLCBXZWJzaXRlRGF0YVR5
cGU6OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKICAgICAgICAgfSk7CiAgICAgfQotI2VuZGlm
CiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgcGF0aCA9IG1fc2VydmljZVdvcmtl
ckluZm8uZ2V0KHNlc3Npb25JRCkuZGF0YWJhc2VQYXRoOwpAQCAtMTU5MywxMCArMTU4NSw4IEBA
IHZvaWQgTmV0d29ya1Byb2Nlc3M6OmRlbGV0ZVdlYnNpdGVEYXRhKFAKICAgICBpZiAod2Vic2l0
ZURhdGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkxvY2FsU3RvcmFnZSkgJiYgbV9z
dG9yYWdlTWFuYWdlclNldC0+Y29udGFpbnMoc2Vzc2lvbklEKSkKICAgICAgICAgbV9zdG9yYWdl
TWFuYWdlclNldC0+ZGVsZXRlTG9jYWxTdG9yYWdlTW9kaWZpZWRTaW5jZShzZXNzaW9uSUQsIG1v
ZGlmaWVkU2luY2UsIFtjbGVhclRhc2tzSGFuZGxlcl0geyB9KTsKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVE
YXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzKSAmJiAhc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkp
CiAgICAgICAgIHdlYklEQlNlcnZlcihzZXNzaW9uSUQpLmNsb3NlQW5kRGVsZXRlRGF0YWJhc2Vz
TW9kaWZpZWRTaW5jZShtb2RpZmllZFNpbmNlLCBbY2xlYXJUYXNrc0hhbmRsZXJdIHsgfSk7Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBib29sIGNsZWFyU2Vydmlj
ZVdvcmtlcnMgPSB3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6RE9N
Q2FjaGUpIHx8IHdlYnNpdGVEYXRhVHlwZXMuY29udGFpbnMoV2Vic2l0ZURhdGFUeXBlOjpTZXJ2
aWNlV29ya2VyUmVnaXN0cmF0aW9ucyk7CkBAIC0xNzA3LDEwICsxNjk3LDggQEAgdm9pZCBOZXR3
b3JrUHJvY2Vzczo6ZGVsZXRlV2Vic2l0ZURhdGFGbwogICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVz
LmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6TG9jYWxTdG9yYWdlKSAmJiBtX3N0b3JhZ2VNYW5h
Z2VyU2V0LT5jb250YWlucyhzZXNzaW9uSUQpKQogICAgICAgICBtX3N0b3JhZ2VNYW5hZ2VyU2V0
LT5kZWxldGVMb2NhbFN0b3JhZ2VGb3JPcmlnaW5zKHNlc3Npb25JRCwgb3JpZ2luRGF0YXMsIFtj
bGVhclRhc2tzSGFuZGxlcl0geyB9KTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQog
ICAgIGlmICh3ZWJzaXRlRGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhl
ZERCRGF0YWJhc2VzKSAmJiAhc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpCiAgICAgICAgIHdlYklE
QlNlcnZlcihzZXNzaW9uSUQpLmNsb3NlQW5kRGVsZXRlRGF0YWJhc2VzRm9yT3JpZ2lucyhvcmln
aW5EYXRhcywgW2NsZWFyVGFza3NIYW5kbGVyXSB7IH0pOwotI2VuZGlmCiAKICNpZiBFTkFCTEUo
U0VSVklDRV9XT1JLRVIpCiAgICAgYm9vbCBjbGVhclNlcnZpY2VXb3JrZXJzID0gd2Vic2l0ZURh
dGFUeXBlcy5jb250YWlucyhXZWJzaXRlRGF0YVR5cGU6OkRPTUNhY2hlKSB8fCB3ZWJzaXRlRGF0
YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6U2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bnMpOwpAQCAtMTkwOSw3ICsxODk3LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6ZGVsZXRlQW5k
UmVzdHJpY3RXZQogICAgICAgICB9CiAgICAgfQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwog
ICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJz
aXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKICAgICAgICAgd2ViSURCU2VydmVy
KHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbdGhpcywgcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRo
aXMpLCBzZXNzaW9uSUQsIGNhbGxiYWNrQWdncmVnYXRvciwgZG9tYWluc1RvRGVsZXRlQWxsTm9u
Q29va2llV2Vic2l0ZURhdGFGb3JdKGF1dG8mJiBvcmlnaW5zKSB7CkBAIC0xOTIwLDcgKzE5MDcs
NiBAQCB2b2lkIE5ldHdvcmtQcm9jZXNzOjpkZWxldGVBbmRSZXN0cmljdFdlCiAgICAgICAgICAg
ICB3ZWJJREJTZXJ2ZXIoc2Vzc2lvbklEKS5jbG9zZUFuZERlbGV0ZURhdGFiYXNlc0Zvck9yaWdp
bnMob3JpZ2luc1RvRGVsZXRlLCBbY2FsbGJhY2tBZ2dyZWdhdG9yXSB7IH0pOwogICAgICAgICB9
KTsKICAgICB9Ci0jZW5kaWYKICAgICAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAg
cGF0aCA9IG1fc2VydmljZVdvcmtlckluZm8uZ2V0KHNlc3Npb25JRCkuZGF0YWJhc2VQYXRoOwpA
QCAtMjA0Niw3ICsyMDMyLDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVnaXN0cmFibGVEb21h
aW5zVwogICAgICAgICB9KTsKICAgICB9CiAgICAgCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgYXV0byBwYXRoID0gbV9pZGJEYXRhYmFzZVBhdGhzLmdldChzZXNzaW9uSUQpOwog
ICAgIGlmICghcGF0aC5pc0VtcHR5KCkgJiYgd2Vic2l0ZURhdGFUeXBlcy5jb250YWlucyhXZWJz
aXRlRGF0YVR5cGU6OkluZGV4ZWREQkRhdGFiYXNlcykpIHsKICAgICAgICAgd2ViSURCU2VydmVy
KHNlc3Npb25JRCkuZ2V0T3JpZ2lucyhbY2FsbGJhY2tBZ2dyZWdhdG9yXShhdXRvJiYgb3JpZ2lu
cykgewpAQCAtMjA1NCw3ICsyMDM5LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVnaXN0cmFi
bGVEb21haW5zVwogICAgICAgICAgICAgICAgIGNhbGxiYWNrQWdncmVnYXRvci0+bV93ZWJzaXRl
RGF0YS5lbnRyaWVzLmFwcGVuZCh7IG9yaWdpbnMudGFrZUFueSgpLCBXZWJzaXRlRGF0YVR5cGU6
OkluZGV4ZWREQkRhdGFiYXNlcywgMCB9KTsKICAgICAgICAgfSk7CiAgICAgfQotI2VuZGlmCiAg
ICAgCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIHBhdGggPSBtX3NlcnZpY2VXb3Jr
ZXJJbmZvLmdldChzZXNzaW9uSUQpLmRhdGFiYXNlUGF0aDsKQEAgLTIyMTcsNyArMjIwMSw3IEBA
IHZvaWQgTmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1c3BlbmQoYm8KIHsKICAgICBSRUxFQVNF
X0xPRyhQcm9jZXNzU3VzcGVuc2lvbiwgIiVwIC0gTmV0d29ya1Byb2Nlc3M6OnByZXBhcmVUb1N1
c3BlbmQoKSwgaXNTdXNwZW5zaW9uSW1taW5lbnQ9JWQiLCB0aGlzLCBpc1N1c3BlbnNpb25JbW1p
bmVudCk7CiAKLSNpZiBQTEFURk9STShJT1NfRkFNSUxZKSAmJiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKKyNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGZvciAoYXV0byYgc2VydmVyIDog
bV93ZWJJREJTZXJ2ZXJzLnZhbHVlcygpKQogICAgICAgICBzZXJ2ZXItPnN1c3BlbmQoKTsKICNl
bmRpZgpAQCAtMjI4Nyw3ICsyMjcxLDcgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVzdW1lKCkK
ICAgICBmb3IgKGF1dG8mIHNlcnZlciA6IG1fc3dTZXJ2ZXJzLnZhbHVlcygpKQogICAgICAgICBz
ZXJ2ZXItPmVuZFN1c3BlbnNpb24oKTsKICNlbmRpZgotI2lmIFBMQVRGT1JNKElPU19GQU1JTFkp
ICYmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQorI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAg
ICAgZm9yIChhdXRvJiBzZXJ2ZXIgOiBtX3dlYklEQlNlcnZlcnMudmFsdWVzKCkpCiAgICAgICAg
IHNlcnZlci0+cmVzdW1lKCk7CiAjZW5kaWYKQEAgLTIzNDEsNyArMjMyNSw2IEBAIHZvaWQgTmV0
d29ya1Byb2Nlc3M6OnJlZ2lzdGVyVVJMU2NoZW1lQXMKICAgICBMZWdhY3lTY2hlbWVSZWdpc3Ry
eTo6cmVnaXN0ZXJVUkxTY2hlbWVBc05vQWNjZXNzKHNjaGVtZSk7CiB9CiAKLSNpZiBFTkFCTEUo
SU5ERVhFRF9EQVRBQkFTRSkKIFJlZjxXZWJJREJTZXJ2ZXI+IE5ldHdvcmtQcm9jZXNzOjpjcmVh
dGVXZWJJREJTZXJ2ZXIoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklEKQogewogICAgIFN0cmluZyBw
YXRoOwpAQCAtMjQwMSw4ICsyMzg0LDYgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzczo6cmVtb3ZlV2Vi
SURCU2VydmVySQogICAgIG1fd2ViSURCU2VydmVycy5yZW1vdmUoaXRlcmF0b3IpOwogfQogCi0j
ZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIHZvaWQgTmV0d29ya1Byb2Nlc3M6
OnN5bmNMb2NhbFN0b3JhZ2UoQ29tcGxldGlvbkhhbmRsZXI8dm9pZCgpPiYmIGNvbXBsZXRpb25I
YW5kbGVyKQogewogICAgIG1fc3RvcmFnZU1hbmFnZXJTZXQtPndhaXRVbnRpbFN5bmNpbmdMb2Nh
bFN0b3JhZ2VGaW5pc2hlZCgpOwpAQCAtMjQ0NywxMyArMjQyOCwxMSBAQCB2b2lkIE5ldHdvcmtQ
cm9jZXNzOjpyZW5hbWVPcmlnaW5JbldlYnNpCiAgICAgICAgICAgICBtX3N0b3JhZ2VNYW5hZ2Vy
U2V0LT5yZW5hbWVPcmlnaW4oc2Vzc2lvbklELCBvbGROYW1lLCBuZXdOYW1lLCBbYWdncmVnYXRv
cl0geyB9KTsKICAgICB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBpZiAo
ZGF0YVR5cGVzLmNvbnRhaW5zKFdlYnNpdGVEYXRhVHlwZTo6SW5kZXhlZERCRGF0YWJhc2VzKSkg
ewogICAgICAgICBhdXRvIHBhdGggPSBtX2lkYkRhdGFiYXNlUGF0aHMuZ2V0KHNlc3Npb25JRCk7
CiAgICAgICAgIGlmICghcGF0aC5pc0VtcHR5KCkpCiAgICAgICAgICAgICB3ZWJJREJTZXJ2ZXIo
c2Vzc2lvbklEKS5yZW5hbWVPcmlnaW4ob2xkT3JpZ2luLCBuZXdPcmlnaW4sIFthZ2dyZWdhdG9y
XSB7IH0pOwogICAgIH0KLSNlbmRpZgogfQogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQpA
QCAtMjUzNywxOSArMjUxNiwxMyBAQCBSZWZQdHI8U3RvcmFnZVF1b3RhTWFuYWdlcj4gTmV0d29y
a1Byb2NlCiAgICAgaWYgKCFzZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdlcikKICAgICAgICAgcmV0
dXJuIG51bGxwdHI7CiAKLSAgICBTdHJpbmcgaWRiUm9vdFBhdGg7Ci0jaWYgRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCi0gICAgaWRiUm9vdFBhdGggPSBzZXNzaW9uU3RvcmFnZVF1b3RhTWFuYWdl
ci0+aWRiUm9vdFBhdGgoKTsKLSNlbmRpZgorICAgIFN0cmluZyBpZGJSb290UGF0aCA9IHNlc3Np
b25TdG9yYWdlUXVvdGFNYW5hZ2VyLT5pZGJSb290UGF0aCgpOwogICAgIFN0b3JhZ2VRdW90YU1h
bmFnZXI6OlVzYWdlR2V0dGVyIHVzYWdlR2V0dGVyID0gW2NhY2hlUm9vdFBhdGggPSBzZXNzaW9u
U3RvcmFnZVF1b3RhTWFuYWdlci0+Y2FjaGVSb290UGF0aCgpLmlzb2xhdGVkQ29weSgpLCBpZGJS
b290UGF0aCA9IGlkYlJvb3RQYXRoLmlzb2xhdGVkQ29weSgpLCBvcmlnaW4gPSBvcmlnaW4uaXNv
bGF0ZWRDb3B5KCldKFN0b3JhZ2VRdW90YU1hbmFnZXI6OlNob3VsZFByaW50VXNhZ2VEZXRhaWwg
c2hvdWxkUHJpbnR1c2FnZURldGFpbCkgewogICAgICAgICBBU1NFUlQoIWlzTWFpblJ1bkxvb3Ao
KSk7CiAKICAgICAgICAgdWludDY0X3QgY2FjaGVVc2FnZSA9IENhY2hlU3RvcmFnZTo6RW5naW5l
OjpkaXNrVXNhZ2UoY2FjaGVSb290UGF0aCwgb3JpZ2luKTsKLSAgICAgICAgdWludDY0X3QgdXNh
Z2UgPSBjYWNoZVVzYWdlOworICAgICAgICB1aW50NjRfdCB1c2FnZSA9IGNhY2hlVXNhZ2UgKyBJ
REJTZXJ2ZXI6OklEQlNlcnZlcjo6ZGlza1VzYWdlKGlkYlJvb3RQYXRoLCBvcmlnaW4pOwogCi0j
aWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0gICAgICAgIHVzYWdlICs9IElEQlNlcnZlcjo6
SURCU2VydmVyOjpkaXNrVXNhZ2UoaWRiUm9vdFBhdGgsIG9yaWdpbik7Ci0jZW5kaWYKICAgICAg
ICAgaWYgKHNob3VsZFByaW50dXNhZ2VEZXRhaWwgPT0gU3RvcmFnZVF1b3RhTWFuYWdlcjo6U2hv
dWxkUHJpbnRVc2FnZURldGFpbDo6WWVzKQogICAgICAgICAgICAgV1RGTG9nQWx3YXlzKCJTdG9y
YWdlUXVvdGFNYW5hZ2VyOjpVc2FnZUdldHRlciBDYWNoZSB1c2FnZSAlIiBQUkl1NjQgIiwgSURC
IHVzYWdlICUiIFBSSXU2NCwgY2FjaGVVc2FnZSwgdXNhZ2UpOwogCkBAIC0yNzE4LDEyICsyNjkx
LDEwIEBAIHZvaWQgTmV0d29ya1Byb2Nlc3M6OmNvbm5lY3Rpb25Ub1dlYlByb2MKIHsKICAgICBt
X3N0b3JhZ2VNYW5hZ2VyU2V0LT5yZW1vdmVDb25uZWN0aW9uKGNvbm5lY3Rpb24pOwogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgYXV0byogd2ViSURCU2VydmVyID0gbV93ZWJJ
REJTZXJ2ZXJzLmdldChzZXNzaW9uSUQpOwogICAgIEFTU0VSVCh3ZWJJREJTZXJ2ZXIpOwogICAg
IHdlYklEQlNlcnZlci0+cmVtb3ZlQ29ubmVjdGlvbihjb25uZWN0aW9uKTsKICAgICByZW1vdmVX
ZWJJREJTZXJ2ZXJJZlBvc3NpYmxlKHNlc3Npb25JRCk7Ci0jZW5kaWYKIH0KIAogTmV0d29ya0Nv
bm5lY3Rpb25Ub1dlYlByb2Nlc3MqIE5ldHdvcmtQcm9jZXNzOjp3ZWJQcm9jZXNzQ29ubmVjdGlv
bihQcm9jZXNzSWRlbnRpZmllciBpZGVudGlmaWVyKSBjb25zdApJbmRleDogU291cmNlL1dlYktp
dC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3MuaAkocmV2aXNpb24gMjc1MTIzKQor
KysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzcy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yOTgsOSArMjk4LDcgQEAgcHVibGljOgogICAgIE5ldHdvcmtDb250ZW50UnVs
ZUxpc3RNYW5hZ2VyJiBuZXR3b3JrQ29udGVudFJ1bGVMaXN0TWFuYWdlcigpIHsgcmV0dXJuIG1f
bmV0d29ya0NvbnRlbnRSdWxlTGlzdE1hbmFnZXI7IH0KICNlbmRpZgogCi0jaWYgRU5BQkxFKElO
REVYRURfREFUQUJBU0UpCiAgICAgV2ViSURCU2VydmVyJiB3ZWJJREJTZXJ2ZXIoUEFMOjpTZXNz
aW9uSUQpOwotI2VuZGlmCiAKICAgICB2b2lkIHN5bmNMb2NhbFN0b3JhZ2UoQ29tcGxldGlvbkhh
bmRsZXI8dm9pZCgpPiYmKTsKIApAQCAtNDc3LDEyICs0NzUsMTAgQEAgcHJpdmF0ZToKICAgICB2
b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNOb0FjY2Vzcyhjb25zdCBTdHJpbmcmKSBjb25zdDsKICAg
ICB2b2lkIHJlZ2lzdGVyVVJMU2NoZW1lQXNDT1JTRW5hYmxlZChjb25zdCBTdHJpbmcmKSBjb25z
dDsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZvaWQgYWRkSW5kZXhlZERh
dGFiYXNlU2Vzc2lvbihQQUw6OlNlc3Npb25JRCwgU3RyaW5nJiwgU2FuZGJveEV4dGVuc2lvbjo6
SGFuZGxlJik7CiAgICAgUmVmPFdlYklEQlNlcnZlcj4gY3JlYXRlV2ViSURCU2VydmVyKFBBTDo6
U2Vzc2lvbklEKTsKICAgICB2b2lkIHNldFNlc3Npb25TdG9yYWdlUXVvdGFNYW5hZ2VySURCUm9v
dFBhdGgoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IFN0cmluZyYgaWRiUm9vdFBhdGgpOwogICAgIHZv
aWQgcmVtb3ZlV2ViSURCU2VydmVySWZQb3NzaWJsZShQQUw6OlNlc3Npb25JRCk7Ci0jZW5kaWYK
IAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICB2b2lkIGRpZENyZWF0ZVdvcmtlckNv
bnRleHRQcm9jZXNzQ29ubmVjdGlvbihjb25zdCBJUEM6OkF0dGFjaG1lbnQmKTsKQEAgLTUyMCwx
NiArNTE2LDEzIEBAIHByaXZhdGU6CiAgICAgICAgIGF1dG8gZXhpc3RpbmdTdG9yYWdlUXVvdGFN
YW5hZ2VycygpIHsgcmV0dXJuIG1fc3RvcmFnZVF1b3RhTWFuYWdlcnMudmFsdWVzKCk7IH0KIAog
ICAgICAgICBjb25zdCBTdHJpbmcmIGNhY2hlUm9vdFBhdGgoKSBjb25zdCB7IHJldHVybiBtX2Nh
Y2hlUm9vdFBhdGg7IH0KLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKKwogICAgICAgICB2
b2lkIHNldElEQlJvb3RQYXRoKGNvbnN0IFN0cmluZyYgaWRiUm9vdFBhdGgpIHsgbV9pZGJSb290
UGF0aCA9IGlkYlJvb3RQYXRoOyB9CiAgICAgICAgIGNvbnN0IFN0cmluZyYgaWRiUm9vdFBhdGgo
KSBjb25zdCB7IHJldHVybiBtX2lkYlJvb3RQYXRoOyB9Ci0jZW5kaWYKIAogICAgIHByaXZhdGU6
CiAgICAgICAgIFN0cmluZyBtX2NhY2hlUm9vdFBhdGg7Ci0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCiAgICAgICAgIFN0cmluZyBtX2lkYlJvb3RQYXRoOwotI2VuZGlmCiAgICAgICAgIHVp
bnQ2NF90IG1fZGVmYXVsdFF1b3RhIHsgV2ViQ29yZTo6U3RvcmFnZVF1b3RhTWFuYWdlcjo6ZGVm
YXVsdFF1b3RhKCkgfTsKICAgICAgICAgdWludDY0X3QgbV9kZWZhdWx0VGhpcmRQYXJ0eVF1b3Rh
IHsgV2ViQ29yZTo6U3RvcmFnZVF1b3RhTWFuYWdlcjo6ZGVmYXVsdFRoaXJkUGFydHlRdW90YSgp
IH07CiAgICAgICAgIEhhc2hNYXA8V2ViQ29yZTo6Q2xpZW50T3JpZ2luLCBSZWZQdHI8V2ViQ29y
ZTo6U3RvcmFnZVF1b3RhTWFuYWdlcj4+IG1fc3RvcmFnZVF1b3RhTWFuYWdlcnM7CkBAIC01NzYs
MTAgKzU2OSw4IEBAIHByaXZhdGU6CiAgICAgV2ViU1FMaXRlRGF0YWJhc2VUcmFja2VyIG1fd2Vi
U1FMaXRlRGF0YWJhc2VUcmFja2VyOwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKICAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBTdHJpbmc+IG1faWRiRGF0YWJhc2VQ
YXRoczsKICAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBSZWZQdHI8V2ViSURCU2VydmVyPj4g
bV93ZWJJREJTZXJ2ZXJzOwotI2VuZGlmCiAgICAgCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VS
KQogICAgIHN0cnVjdCBTZXJ2aWNlV29ya2VySW5mbyB7CkluZGV4OiBTb3VyY2UvV2ViS2l0L05l
dHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNv
bm5lY3Rpb25Ub0NsaWVudC5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQv
TmV0d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub0NsaWVudC5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJXZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaCIKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQotCiAjaW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSAi
V2ViSURCQ29ubmVjdGlvblRvU2VydmVyTWVzc2FnZXMuaCIKICNpbmNsdWRlICJXZWJJREJSZXN1
bHQuaCIKQEAgLTE5OSw1ICsxOTcsMyBAQCB2b2lkIFdlYklEQkNvbm5lY3Rpb25Ub0NsaWVudDo6
ZGlkR2V0QWxsCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0lu
ZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJDb25uZWN0aW9uVG9DbGllbnQu
aAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRl
eGVkREIvV2ViSURCQ29ubmVjdGlvblRvQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI1LDgg
KzI1LDYgQEAKIAogI3ByYWdtYSBvbmNlCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LQogI2luY2x1ZGUgIk1lc3NhZ2VTZW5kZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNvbm5l
Y3Rpb25Ub0NsaWVudC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvSW5kZXhlZERCLmg+CkBAIC05Miw1
ICs5MCwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9OZXR3b3Jr
UHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXIuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L05ldHdvcmtQcm9jZXNzL0luZGV4ZWREQi9XZWJJ
REJTZXJ2ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMiw4ICszMiw2IEBACiAjaW5jbHVkZSA8
V2ViQ29yZS9TdG9yYWdlUXVvdGFNYW5hZ2VyLmg+CiAjaW5jbHVkZSA8d3RmL3RocmVhZHMvQmlu
YXJ5U2VtYXBob3JlLmg+CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIFJlZjxXZWJJREJTZXJ2ZXI+IFdlYklEQlNlcnZlcjo6Y3JlYXRlKFBB
TDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgU3RyaW5nJiBkaXJlY3RvcnksIFdlYkNvcmU6
OklEQlNlcnZlcjo6SURCU2VydmVyOjpTdG9yYWdlUXVvdGFNYW5hZ2VyU3BhY2VSZXF1ZXN0ZXIm
JiBzcGFjZVJlcXVlc3RlcikKQEAgLTQxOCw0ICs0MTYsMyBAQCB2b2lkIFdlYklEQlNlcnZlcjo6
Y2xvc2UoKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLSNlbmRpZgpJbmRleDogU291cmNl
L1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVyLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURCU2VydmVy
LmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvTmV0d29ya1Byb2Nlc3MvSW5k
ZXhlZERCL1dlYklEQlNlcnZlci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAK
ICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRl
ICJDb25uZWN0aW9uLmgiCiAKICNpbmNsdWRlICJXZWJJREJDb25uZWN0aW9uVG9DbGllbnQuaCIK
QEAgLTEwNSw1ICsxMDMsMyBAQCBwcml2YXRlOgogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIv
V2ViSURCU2VydmVyLm1lc3NhZ2VzLmluCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvTmV0
d29ya1Byb2Nlc3MvSW5kZXhlZERCL1dlYklEQlNlcnZlci5tZXNzYWdlcy5pbgkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9OZXR3b3JrUHJvY2Vzcy9JbmRleGVkREIvV2ViSURC
U2VydmVyLm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsyMCw2IEBACiAjIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkg
V0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9E
QVRBQkFTRSkKLQogbWVzc2FnZXMgLT4gV2ViSURCU2VydmVyIHsKICAgICBEZWxldGVEYXRhYmFz
ZShXZWJDb3JlOjpJREJSZXF1ZXN0RGF0YSByZXF1ZXN0RGF0YSkKICAgICBPcGVuRGF0YWJhc2Uo
V2ViQ29yZTo6SURCUmVxdWVzdERhdGEgcmVxdWVzdERhdGEpCkBAIC01Miw1ICs1MCwzIEBAIG1l
c3NhZ2VzIC0+IFdlYklEQlNlcnZlciB7CiAKICAgICBHZXRBbGxEYXRhYmFzZU5hbWVzQW5kVmVy
c2lvbnMoV2ViQ29yZTo6SURCUmVzb3VyY2VJZGVudGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyLCBz
dHJ1Y3QgV2ViQ29yZTo6Q2xpZW50T3JpZ2luIG9yaWdpbikgV2FudHNDb25uZWN0aW9uCiB9Ci0K
LSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQv
U2hhcmVkL1dlYkNvcmVBcmd1bWVudENvZGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAkocmV2aXNpb24gMjc1MTIzKQor
KysgU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjcxNiw3ICsyNzE2LDYgQEAgYm9vbCBBcmd1bWVudENvZGVyPE1lZGlhQ29u
c3RyYWludHM+OjpkZQogfQogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
IHZvaWQgQXJndW1lbnRDb2RlcjxJREJLZXlQYXRoPjo6ZW5jb2RlKEVuY29kZXImIGVuY29kZXIs
IGNvbnN0IElEQktleVBhdGgmIGtleVBhdGgpCiB7CiAgICAgYm9vbCBpc1N0cmluZyA9IFdURjo6
aG9sZHNfYWx0ZXJuYXRpdmU8U3RyaW5nPihrZXlQYXRoKTsKQEAgLTI3NDUsNyArMjc0NCw2IEBA
IGJvb2wgQXJndW1lbnRDb2RlcjxJREJLZXlQYXRoPjo6ZGVjb2RlKEQKICAgICB9CiAgICAgcmV0
dXJuIHRydWU7CiB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKIHZvaWQg
QXJndW1lbnRDb2RlcjxTZXJ2aWNlV29ya2VyT3JDbGllbnREYXRhPjo6ZW5jb2RlKEVuY29kZXIm
IGVuY29kZXIsIGNvbnN0IFNlcnZpY2VXb3JrZXJPckNsaWVudERhdGEmIGRhdGEpCkluZGV4OiBT
b3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJDb3JlQXJndW1lbnRDb2RlcnMuaAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTE2MSw2ICsxNjEsNyBAQCBzdHJ1Y3QgV2luZG93RmVhdHVyZXM7
CiAgICAgCiB0ZW1wbGF0ZTx0eXBlbmFtZT4gY2xhc3MgUmVjdEVkZ2VzOwogdXNpbmcgRmxvYXRC
b3hFeHRlbnQgPSBSZWN0RWRnZXM8ZmxvYXQ+OwordXNpbmcgSURCS2V5UGF0aCA9IFZhcmlhbnQ8
U3RyaW5nLCBWZWN0b3I8U3RyaW5nPj47CiAKICNpZiBQTEFURk9STShDT0NPQSkKIHN0cnVjdCBL
ZXlwcmVzc0NvbW1hbmQ7CkBAIC0yMDEsMTAgKzIwMiw2IEBAIHN0cnVjdCBNZWRpYUNvbnN0cmFp
bnRzOwogc3RydWN0IFNlcmlhbGl6ZWRBdHRhY2htZW50RGF0YTsKICNlbmRpZgogCi0jaWYgRU5B
QkxFKElOREVYRURfREFUQUJBU0UpCi11c2luZyBJREJLZXlQYXRoID0gVmFyaWFudDxTdHJpbmcs
IFZlY3RvcjxTdHJpbmc+PjsKLSNlbmRpZgotCiAjaWYgRU5BQkxFKEdQVV9QUk9DRVNTKSAmJiBF
TkFCTEUoV0VCR0wpCiBzdHJ1Y3QgR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzOwogI2VuZGlm
CkBAIC03MjEsMTUgKzcxOCwxMSBAQCB0ZW1wbGF0ZTw+IHN0cnVjdCBBcmd1bWVudENvZGVyPFdl
YkNvcmU6CiB9OwogI2VuZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogdGVt
cGxhdGU8PiBzdHJ1Y3QgQXJndW1lbnRDb2RlcjxXZWJDb3JlOjpJREJLZXlQYXRoPiB7CiAgICAg
c3RhdGljIHZvaWQgZW5jb2RlKEVuY29kZXImLCBjb25zdCBXZWJDb3JlOjpJREJLZXlQYXRoJik7
CiAgICAgc3RhdGljIFdBUk5fVU5VU0VEX1JFVFVSTiBib29sIGRlY29kZShEZWNvZGVyJiwgV2Vi
Q29yZTo6SURCS2V5UGF0aCYpOwogfTsKIAotI2VuZGlmCi0KICNpZiBFTkFCTEUoU0VSVklDRV9X
T1JLRVIpCiAKIHRlbXBsYXRlPD4gc3RydWN0IEFyZ3VtZW50Q29kZXI8V2ViQ29yZTo6U2Vydmlj
ZVdvcmtlck9yQ2xpZW50RGF0YT4gewpAQCAtOTA0LDcgKzg5Nyw2IEBAIHRlbXBsYXRlPD4gc3Ry
dWN0IEVudW1UcmFpdHM8V2ViQ29yZTo6Tm8KICAgICA+OwogfTsKIAotI2lmIEVOQUJMRShJTkRF
WEVEX0RBVEFCQVNFKQogdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpJbmRl
eGVkREI6OkdldEFsbFR5cGU+IHsKICAgICB1c2luZyB2YWx1ZXMgPSBFbnVtVmFsdWVzPAogICAg
ICAgICBXZWJDb3JlOjpJbmRleGVkREI6OkdldEFsbFR5cGUsCkBAIC05MTIsNyArOTA0LDYgQEAg
dGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJDb3JlOjpJbgogICAgICAgICBXZWJDb3Jl
OjpJbmRleGVkREI6OkdldEFsbFR5cGU6OlZhbHVlcwogICAgID47CiB9OwotI2VuZGlmCiAKICNp
ZiBFTkFCTEUoTUVESUFfU1RSRUFNKQogdGVtcGxhdGU8PiBzdHJ1Y3QgRW51bVRyYWl0czxXZWJD
b3JlOjpSZWFsdGltZU1lZGlhU291cmNlOjpUeXBlPiB7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1No
YXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdC9TaGFyZWQvV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMuY3BwCShyZXZpc2lvbiAy
NzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVy
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQwLDEwICs0MCw3IEBAIHZvaWQgV2Vic2l0ZURhdGFT
dG9yZVBhcmFtZXRlcnM6OmVuY29kZSgKICAgICBlbmNvZGVyIDw8IG5ldHdvcmtTZXNzaW9uUGFy
YW1ldGVyczsKICAgICBlbmNvZGVyIDw8IHVpUHJvY2Vzc0Nvb2tpZVN0b3JhZ2VJZGVudGlmaWVy
OwogICAgIGVuY29kZXIgPDwgY29va2llU3RvcmFnZVBhdGhFeHRlbnNpb25IYW5kbGU7Ci0KLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBlbmNvZGVyIDw8IGluZGV4ZWREYXRhYmFz
ZURpcmVjdG9yeSA8PCBpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0j
ZW5kaWYKIAogI2lmIEVOQUJMRShTRVJWSUNFX1dPUktFUikKICAgICBlbmNvZGVyIDw8IHNlcnZp
Y2VXb3JrZXJSZWdpc3RyYXRpb25EaXJlY3RvcnkgPDwgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeUV4dGVuc2lvbkhhbmRsZSA8PCBzZXJ2aWNlV29ya2VyUHJvY2Vzc1Rlcm1pbmF0
aW9uRGVsYXlFbmFibGVkOwpAQCAtNzksNyArNzYsNiBAQCBPcHRpb25hbDxXZWJzaXRlRGF0YVN0
b3JlUGFyYW1ldGVycz4gV2ViCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAgICAgcGFy
YW1ldGVycy5jb29raWVTdG9yYWdlUGF0aEV4dGVuc2lvbkhhbmRsZSA9IFdURk1vdmUoKmNvb2tp
ZVN0b3JhZ2VQYXRoRXh0ZW5zaW9uSGFuZGxlKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFC
QVNFKQogICAgIE9wdGlvbmFsPFN0cmluZz4gaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5OwogICAg
IGRlY29kZXIgPj4gaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5OwogICAgIGlmICghaW5kZXhlZERh
dGFiYXNlRGlyZWN0b3J5KQpAQCAtOTEsNyArODcsNiBAQCBPcHRpb25hbDxXZWJzaXRlRGF0YVN0
b3JlUGFyYW1ldGVycz4gV2ViCiAgICAgaWYgKCFpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRl
bnNpb25IYW5kbGUpCiAgICAgICAgIHJldHVybiBXVEY6Om51bGxvcHQ7CiAgICAgcGFyYW1ldGVy
cy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUgPSBXVEZNb3ZlKCppbmRl
eGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGUpOwotI2VuZGlmCiAKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCiAgICAgT3B0aW9uYWw8U3RyaW5nPiBzZXJ2aWNlV29ya2VyUmVn
aXN0cmF0aW9uRGlyZWN0b3J5OwpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvV2Vic2l0ZURh
dGFTdG9yZVBhcmFtZXRlcnMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9X
ZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5oCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9XZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycy5oCSh3b3JraW5nIGNvcHkp
CkBAIC01MywxMCArNTMsOCBAQCBzdHJ1Y3QgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgewog
ICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBjb29raWVTdG9yYWdlUGF0aEV4dGVuc2lvbkhh
bmRsZTsKICAgICBOZXR3b3JrU2Vzc2lvbkNyZWF0aW9uUGFyYW1ldGVycyBuZXR3b3JrU2Vzc2lv
blBhcmFtZXRlcnM7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBTdHJpbmcg
aW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5OwogICAgIFNhbmRib3hFeHRlbnNpb246OkhhbmRsZSBp
bmRleGVkRGF0YWJhc2VEaXJlY3RvcnlFeHRlbnNpb25IYW5kbGU7Ci0jZW5kaWYKIAogI2lmIEVO
QUJMRShTRVJWSUNFX1dPUktFUikKICAgICBTdHJpbmcgc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVk
REIvSURCVXRpbGl0aWVzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1NoYXJlZC9E
YXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvSURCVXRpbGl0aWVzLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzAsOCArMzAsNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU2Vj
dXJpdHlPcmlnaW4uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9TdHJpbmdCdWlsZGVyLmg+CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbmFtZXNwYWNlIFdlYktpdCB7CiAKIFN0cmlu
ZyB1bmlxdWVEYXRhYmFzZUlkZW50aWZpZXIoY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNv
bnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBvcGVuaW5nT3JpZ2luLCBjb25zdCBXZWJDb3Jl
OjpTZWN1cml0eU9yaWdpbiYgbWFpbkZyYW1lT3JpZ2luKQpAQCAtNTYsNSArNTQsMyBAQCBTdHJp
bmcgdW5pcXVlRGF0YWJhc2VJZGVudGlmaWVyKGNvbnN0IFN0CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYktpdAotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL0lEQlV0aWxpdGllcy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvSURCVXRp
bGl0aWVzLmgJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0RhdGFi
YXNlcy9JbmRleGVkREIvSURCVXRpbGl0aWVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEzICsy
NCwxMCBAQAogICoKICAqLwogCi0jaWZuZGVmIElEQlV0aWxpdGllc19oCi0jZGVmaW5lIElEQlV0
aWxpdGllc19oCisjcHJhZ21hIG9uY2UKIAogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5o
PgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsK
IAogY2xhc3MgU2VjdXJpdHlPcmlnaW47CkBAIC00Miw2ICszOSwzIEBAIG5hbWVzcGFjZSBXZWJL
aXQgewogU3RyaW5nIHVuaXF1ZURhdGFiYXNlSWRlbnRpZmllcihjb25zdCBTdHJpbmcmIGRhdGFi
YXNlTmFtZSwgY29uc3QgV2ViQ29yZTo6U2VjdXJpdHlPcmlnaW4mIG9wZW5pbmdPcmlnaW4sIGNv
bnN0IFdlYkNvcmU6OlNlY3VyaXR5T3JpZ2luJiBtYWluRnJhbWVPcmlnaW4pOwogICAgIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
LSNlbmRpZiAvLyBJREJVdGlsaXRpZXNfaApJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvRGF0
YWJhc2VzL0luZGV4ZWREQi9XZWJJREJSZXN1bHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvU2hhcmVkL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCUmVzdWx0LmNwcAkocmV2aXNp
b24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvRGF0YWJhc2VzL0luZGV4ZWREQi9X
ZWJJREJSZXN1bHQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVk
ZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViSURCUmVzdWx0LmgiCiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKLQogI2luY2x1ZGUgIldlYkNvcmVBcmd1bWVudENvZGVycy5oIgogCiBu
YW1lc3BhY2UgV2ViS2l0IHsKQEAgLTU2LDUgKzU0LDMgQEAgYm9vbCBXZWJJREJSZXN1bHQ6OmRl
Y29kZShJUEM6OkRlY29kZXImIAogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlm
IC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQv
RGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJSZXN1bHQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlJlc3VsdC5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1NoYXJlZC9EYXRhYmFzZXMvSW5kZXhlZERCL1dl
YklEQlJlc3VsdC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEg
b25jZQogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJTYW5kYm94
RXh0ZW5zaW9uLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9JREJSZXN1bHREYXRhLmg+CiAjaW5jbHVk
ZSA8d3RmL05vbmNvcHlhYmxlLmg+CkBAIC02Niw1ICs2NCwzIEBAIHByaXZhdGU6CiB9OwogCiB9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNF
KQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1By
b3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9OZXR3b3JrL05l
dHdvcmtQcm9jZXNzUHJveHkuY3BwCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzUHJveHkuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMzQ5LDExICsxMzQ5LDggQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjphZGRTZXNz
aW9uKFdlYgogICAgIGlmIChjYW5TZW5kTWVzc2FnZSgpICYmIHNlbmRQYXJhbWV0ZXJzVG9OZXR3
b3JrUHJvY2VzcyA9PSBTZW5kUGFyYW1ldGVyc1RvTmV0d29ya1Byb2Nlc3M6OlllcykKICAgICAg
ICAgc2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OkFkZFdlYnNpdGVEYXRhU3RvcmUgeyBz
dG9yZS5wYXJhbWV0ZXJzKCkgfSwgMCk7CiAgICAgYXV0byBzZXNzaW9uSUQgPSBzdG9yZS5zZXNz
aW9uSUQoKTsKLSAgICBpZiAoIXNlc3Npb25JRC5pc0VwaGVtZXJhbCgpKSB7Ci0jaWYgRU5BQkxF
KElOREVYRURfREFUQUJBU0UpCisgICAgaWYgKCFzZXNzaW9uSUQuaXNFcGhlbWVyYWwoKSkKICAg
ICAgICAgY3JlYXRlU3ltTGlua0ZvckZpbGVVcGdyYWRlKHN0b3JlLnJlc29sdmVkSW5kZXhlZERh
dGFiYXNlRGlyZWN0b3J5KCkpOwotI2VuZGlmCi0gICAgfQogfQogCiB2b2lkIE5ldHdvcmtQcm9j
ZXNzUHJveHk6OnJlbW92ZVNlc3Npb24oV2Vic2l0ZURhdGFTdG9yZSYgd2Vic2l0ZURhdGFTdG9y
ZSkKQEAgLTE1NDYsNyArMTU0Myw2IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NQcm94eTo6dGVzdFBy
b2Nlc3NJbmMKICAgICByZXBseShoYW5kbGVkKTsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RB
VEFCQVNFKQogdm9pZCBOZXR3b3JrUHJvY2Vzc1Byb3h5OjpjcmVhdGVTeW1MaW5rRm9yRmlsZVVw
Z3JhZGUoY29uc3QgU3RyaW5nJiBpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnkpCiB7CiAgICAgaWYg
KGluZGV4ZWREYXRhYmFzZURpcmVjdG9yeS5pc0VtcHR5KCkpCkBAIC0xNTU3LDcgKzE1NTMsNiBA
QCB2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6OmNyZWF0ZVN5bUxpbmtGCiAgICAgaWYgKCFGaWxl
U3lzdGVtOjpmaWxlRXhpc3RzKG9sZFZlcnNpb25EaXJlY3RvcnkpKQogICAgICAgICBGaWxlU3lz
dGVtOjpjcmVhdGVTeW1ib2xpY0xpbmsoaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5LCBvbGRWZXJz
aW9uRGlyZWN0b3J5KTsKIH0KLSNlbmRpZgogCiB2b2lkIE5ldHdvcmtQcm9jZXNzUHJveHk6Omdl
dExvY2FsU3RvcmFnZURldGFpbHMoUEFMOjpTZXNzaW9uSUQgc2Vzc2lvbklELCBDb21wbGV0aW9u
SGFuZGxlcjx2b2lkKFZlY3RvcjxMb2NhbFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXI6Ok9yaWdpbkRl
dGFpbHM+JiYpPiYmIGNvbXBsZXRpb25IYW5kbGVyKQogewpJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvTmV0d29yay9OZXR3b3JrUHJvY2Vzc1Byb3h5LmgJKHJldmlz
aW9uIDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL05ldHdvcmsvTmV0d29ya1By
b2Nlc3NQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMjYsOSArMjI2LDcgQEAgcHVibGljOgog
ICAgIHZvaWQgYWRkU2Vzc2lvbihXZWJzaXRlRGF0YVN0b3JlJiwgU2VuZFBhcmFtZXRlcnNUb05l
dHdvcmtQcm9jZXNzKTsKICAgICB2b2lkIHJlbW92ZVNlc3Npb24oV2Vic2l0ZURhdGFTdG9yZSYp
OwogICAgIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIHZvaWQgY3JlYXRlU3lt
TGlua0ZvckZpbGVVcGdyYWRlKGNvbnN0IFN0cmluZyYgaW5kZXhlZERhdGFiYXNlRGlyZWN0b3J5
KTsKLSNlbmRpZgogCiAgICAgLy8gUHJvY2Vzc1Rocm90dGxlckNsaWVudAogICAgIHZvaWQgc2Vu
ZFByb2Nlc3NEaWRSZXN1bWUoKSBmaW5hbDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRl
RGF0YVN0b3JlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk5OSwxMSArMTk5OSw5IEBAIFdlYnNp
dGVEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYnNpdGVEYXRhU3QKIAogICAgIHBhcmFtZXRlcnMubmV0
d29ya1Nlc3Npb25QYXJhbWV0ZXJzID0gV1RGTW92ZShuZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMp
OwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgcGFyYW1ldGVycy5pbmRleGVk
RGF0YWJhc2VEaXJlY3RvcnkgPSByZXNvbHZlZEluZGV4ZWREYXRhYmFzZURpcmVjdG9yeSgpOwog
ICAgIGlmICghcGFyYW1ldGVycy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnkuaXNFbXB0eSgpKQog
ICAgICAgICBTYW5kYm94RXh0ZW5zaW9uOjpjcmVhdGVIYW5kbGVGb3JSZWFkV3JpdGVEaXJlY3Rv
cnkocGFyYW1ldGVycy5pbmRleGVkRGF0YWJhc2VEaXJlY3RvcnksIHBhcmFtZXRlcnMuaW5kZXhl
ZERhdGFiYXNlRGlyZWN0b3J5RXh0ZW5zaW9uSGFuZGxlKTsKLSNlbmRpZgogCiAjaWYgRU5BQkxF
KFNFUlZJQ0VfV09SS0VSKQogICAgIHBhcmFtZXRlcnMuc2VydmljZVdvcmtlclJlZ2lzdHJhdGlv
bkRpcmVjdG9yeSA9IHJlc29sdmVkU2VydmljZVdvcmtlclJlZ2lzdHJhdGlvbkRpcmVjdG9yeSgp
OwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTE2LDcgKzExMTYsNiBAQCB2b2lkIFdlYlByb2Nlc3M6Om5ldHdvcmtQ
cm9jZXNzQ29ubmVjdGlvCiAgICAgZm9yIChhdXRvKiBzdG9yYWdlQXJlYU1hcCA6IGNvcHlUb1Zl
Y3RvcihtX3N0b3JhZ2VBcmVhTWFwcy52YWx1ZXMoKSkpCiAgICAgICAgIHN0b3JhZ2VBcmVhTWFw
LT5kaXNjb25uZWN0KCk7CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBmb3Ig
KGF1dG8mIHBhZ2UgOiBtX3BhZ2VNYXAudmFsdWVzKCkpIHsKICAgICAgICAgYXV0byBpZGJDb25u
ZWN0aW9uID0gcGFnZS0+Y29yZVBhZ2UoKS0+b3B0aW9uYWxJREJDb25uZWN0aW9uKCk7CiAgICAg
ICAgIGlmICghaWRiQ29ubmVjdGlvbikKQEAgLTExMjcsNyArMTEyNiw2IEBAIHZvaWQgV2ViUHJv
Y2Vzczo6bmV0d29ya1Byb2Nlc3NDb25uZWN0aW8KICAgICAgICAgICAgIHBhZ2UtPmNvcmVQYWdl
KCktPmNsZWFySURCQ29ubmVjdGlvbigpOwogICAgICAgICB9CiAgICAgfQotI2VuZGlmCiAKICNp
ZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIpCiAgICAgaWYgKFNXQ29udGV4dE1hbmFnZXI6OnNpbmds
ZXRvbigpLmNvbm5lY3Rpb24oKSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRh
YmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9XZWJEYXRhYmFz
ZVByb3ZpZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjYsMTEgKzY2LDkgQEAgV2ViRGF0YWJh
c2VQcm92aWRlcjo6fldlYkRhdGFiYXNlUHJvdmlkZQogICAgIGRhdGFiYXNlUHJvdmlkZXJzKCku
cmVtb3ZlKG1faWRlbnRpZmllcik7CiB9CiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkK
IFdlYkNvcmU6OklEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVyJiBXZWJEYXRhYmFzZVBy
b3ZpZGVyOjppZGJDb25uZWN0aW9uVG9TZXJ2ZXJGb3JTZXNzaW9uKGNvbnN0IFBBTDo6U2Vzc2lv
bklEJikKIHsKICAgICByZXR1cm4gV2ViUHJvY2Vzczo6c2luZ2xldG9uKCkuZW5zdXJlTmV0d29y
a1Byb2Nlc3NDb25uZWN0aW9uKCkuaWRiQ29ubmVjdGlvblRvU2VydmVyKCkuY29yZUNvbm5lY3Rp
b25Ub1NlcnZlcigpOwogfQotI2VuZGlmCiAKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvV2ViRGF0YWJhc2VQcm92aWRlci5oCShyZXZp
c2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL1dlYkRh
dGFiYXNlUHJvdmlkZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMzYsOSArMzYsNyBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIFJlZjxXZWJEYXRhYmFzZVByb3ZpZGVyPiBnZXRPckNyZWF0ZSh1aW50NjRf
dCBpZGVudGlmaWVyKTsKICAgICB2aXJ0dWFsIH5XZWJEYXRhYmFzZVByb3ZpZGVyKCk7CiAKLSNp
ZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKICAgICBXZWJDb3JlOjpJREJDbGllbnQ6OklEQkNv
bm5lY3Rpb25Ub1NlcnZlciYgaWRiQ29ubmVjdGlvblRvU2VydmVyRm9yU2Vzc2lvbihjb25zdCBQ
QUw6OlNlc3Npb25JRCYpIGZpbmFsOwotI2VuZGlmCiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQg
V2ViRGF0YWJhc2VQcm92aWRlcih1aW50NjRfdCBpZGVudGlmaWVyKTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1Nl
cnZlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNl
cy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLmNwcAkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURC
Q29ubmVjdGlvblRvU2VydmVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOCArMjYsNiBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5o
IgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJEYXRhUmVmZXJl
bmNlLmgiCiAjaW5jbHVkZSAiTmV0d29ya0Nvbm5lY3Rpb25Ub1dlYlByb2Nlc3NNZXNzYWdlcy5o
IgogI2luY2x1ZGUgIk5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5oIgpAQCAtMzMzLDUgKzMzMSwz
IEBAIHZvaWQgV2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjpjb25uZWN0aW8KIH0KIAogfSAvLyBu
YW1lc3BhY2UgV2ViS2l0Ci0KLSNlbmRpZiAvLyBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNv
bm5lY3Rpb25Ub1NlcnZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5oCShyZXZpc2lv
biAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWRE
Qi9XZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMjUsOCArMjUs
NiBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotCiAj
aW5jbHVkZSAiTWVzc2FnZVNlbmRlci5oIgogI2luY2x1ZGUgIlNhbmRib3hFeHRlbnNpb24uaCIK
ICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNvbm5lY3Rpb25Ub1NlcnZlci5oPgpAQCAtMTExLDUgKzEw
OSwzIEBAIHByaXZhdGU6CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKLQotI2VuZGlmIC8v
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNz
L0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCQ29ubmVjdGlvblRvU2VydmVyLm1lc3NhZ2VzLmlu
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9EYXRhYmFzZXMvSW5kZXhl
ZERCL1dlYklEQkNvbm5lY3Rpb25Ub1NlcnZlci5tZXNzYWdlcy5pbgkocmV2aXNpb24gMjc1MTIz
KQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURC
Q29ubmVjdGlvblRvU2VydmVyLm1lc3NhZ2VzLmluCSh3b3JraW5nIGNvcHkpCkBAIC0yMCw4ICsy
MCw2IEBACiAjIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCiAjIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAKLSNpZiBFTkFC
TEUoSU5ERVhFRF9EQVRBQkFTRSkKLQogbWVzc2FnZXMgLT4gV2ViSURCQ29ubmVjdGlvblRvU2Vy
dmVyIHsKICAgICBEaWREZWxldGVEYXRhYmFzZShXZWJDb3JlOjpJREJSZXN1bHREYXRhIHJlc3Vs
dCkKICAgICBEaWRPcGVuRGF0YWJhc2UoV2ViQ29yZTo6SURCUmVzdWx0RGF0YSByZXN1bHQpCkBA
IC00OSw1ICs0NywzIEBAIG1lc3NhZ2VzIC0+IFdlYklEQkNvbm5lY3Rpb25Ub1NlcnZlciB7CiAK
ICAgICBEaWRHZXRBbGxEYXRhYmFzZU5hbWVzQW5kVmVyc2lvbnMoV2ViQ29yZTo6SURCUmVzb3Vy
Y2VJZGVudGlmaWVyIHJlcXVlc3RJZGVudGlmaWVyLCBWZWN0b3I8V2ViQ29yZTo6SURCRGF0YWJh
c2VOYW1lQW5kVmVyc2lvbj4gZGF0YWJhc2VzKQogfQotCi0jZW5kaWYgLy8gRU5BQkxFKElOREVY
RURfREFUQUJBU0UpCkluZGV4OiBTb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvTmV0d29yay9OZXR3
b3JrUHJvY2Vzc0Nvbm5lY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2Vi
UHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbi5jcHAJKHJldmlzaW9uIDI3
NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9jZXNz
Q29ubmVjdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0MywxMyArMTQzLDExIEBAIHZvaWQg
TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRSZWNlaXYKICAgICB9CiAjZW5kaWYKIAotI2lm
IEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGlmIChkZWNvZGVyLm1lc3NhZ2VSZWNlaXZl
ck5hbWUoKSA9PSBNZXNzYWdlczo6V2ViSURCQ29ubmVjdGlvblRvU2VydmVyOjptZXNzYWdlUmVj
ZWl2ZXJOYW1lKCkpIHsKICAgICAgICAgaWYgKG1fd2ViSURCQ29ubmVjdGlvbikKICAgICAgICAg
ICAgIG1fd2ViSURCQ29ubmVjdGlvbi0+ZGlkUmVjZWl2ZU1lc3NhZ2UoY29ubmVjdGlvbiwgZGVj
b2Rlcik7CiAgICAgICAgIHJldHVybjsKICAgICB9Ci0jZW5kaWYKIAogI2lmIEVOQUJMRShTRVJW
SUNFX1dPUktFUikKICAgICBpZiAoZGVjb2Rlci5tZXNzYWdlUmVjZWl2ZXJOYW1lKCkgPT0gTWVz
c2FnZXM6OldlYlNXQ2xpZW50Q29ubmVjdGlvbjo6bWVzc2FnZVJlY2VpdmVyTmFtZSgpKSB7CkBA
IC0yMDQsMTAgKzIwMiw4IEBAIHZvaWQgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjpkaWRDbG9z
ZSgKICAgICBSZWY8TmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uPiBwcm90ZWN0b3IoKnRoaXMpOwog
ICAgIFdlYlByb2Nlc3M6OnNpbmdsZXRvbigpLm5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbkNsb3Nl
ZCh0aGlzKTsKIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIGlmIChhdXRvIGlk
YkNvbm5lY3Rpb24gPSBzdGQ6OmV4Y2hhbmdlKG1fd2ViSURCQ29ubmVjdGlvbiwgbnVsbHB0cikp
CiAgICAgICAgIGlkYkNvbm5lY3Rpb24tPmNvbm5lY3Rpb25Ub1NlcnZlckxvc3QoKTsKLSNlbmRp
ZgogCiAjaWYgRU5BQkxFKFNFUlZJQ0VfV09SS0VSKQogICAgIGlmIChhdXRvIHN3Q29ubmVjdGlv
biA9IHN0ZDo6ZXhjaGFuZ2UobV9zd0Nvbm5lY3Rpb24sIG51bGxwdHIpKQpAQCAtMjgzLDE0ICsy
NzksMTIgQEAgdm9pZCBOZXR3b3JrUHJvY2Vzc0Nvbm5lY3Rpb246OmRpZENhY2hlUgogfQogI2Vu
ZGlmCiAKLSNpZiBFTkFCTEUoSU5ERVhFRF9EQVRBQkFTRSkKIFdlYklEQkNvbm5lY3Rpb25Ub1Nl
cnZlciYgTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uOjppZGJDb25uZWN0aW9uVG9TZXJ2ZXIoKQog
ewogICAgIGlmICghbV93ZWJJREJDb25uZWN0aW9uKQogICAgICAgICBtX3dlYklEQkNvbm5lY3Rp
b24gPSBXZWJJREJDb25uZWN0aW9uVG9TZXJ2ZXI6OmNyZWF0ZSgpOwogICAgIHJldHVybiAqbV93
ZWJJREJDb25uZWN0aW9uOwogfQotI2VuZGlmCiAKICNpZiBFTkFCTEUoU0VSVklDRV9XT1JLRVIp
CiBXZWJTV0NsaWVudENvbm5lY3Rpb24mIE5ldHdvcmtQcm9jZXNzQ29ubmVjdGlvbjo6c2Vydmlj
ZVdvcmtlckNvbm5lY3Rpb24oKQpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL05ldHdv
cmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dC9XZWJQcm9jZXNzL05ldHdvcmsvTmV0d29ya1Byb2Nlc3NDb25uZWN0aW9uLmgJKHJldmlzaW9u
IDI3NTEyMykKKysrIFNvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9OZXR3b3JrL05ldHdvcmtQcm9j
ZXNzQ29ubmVjdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC02NiwxMCArNjYsOCBAQCBwdWJsaWM6
CiAKICAgICB2b2lkIHdyaXRlQmxvYnNUb1RlbXBvcmFyeUZpbGVzKGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBibG9iVVJMcywgQ29tcGxldGlvbkhhbmRsZXI8dm9pZChWZWN0b3I8U3RyaW5nPiYmIGZp
bGVQYXRocyk+JiYpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJBU0UpCiAgICAgV2ViSURC
Q29ubmVjdGlvblRvU2VydmVyKiBleGlzdGluZ0lEQkNvbm5lY3Rpb25Ub1NlcnZlcigpIGNvbnN0
IHsgcmV0dXJuIG1fd2ViSURCQ29ubmVjdGlvbi5nZXQoKTsgfTsKICAgICBXZWJJREJDb25uZWN0
aW9uVG9TZXJ2ZXImIGlkYkNvbm5lY3Rpb25Ub1NlcnZlcigpOwotI2VuZGlmCiAKICNpZiBFTkFC
TEUoU0VSVklDRV9XT1JLRVIpCiAgICAgV2ViU1dDbGllbnRDb25uZWN0aW9uJiBzZXJ2aWNlV29y
a2VyQ29ubmVjdGlvbigpOwpAQCAtMTIyLDkgKzEyMCw3IEBAIHByaXZhdGU6CiAgICAgT3B0aW9u
YWw8YXVkaXRfdG9rZW5fdD4gbV9uZXR3b3JrUHJvY2Vzc0F1ZGl0VG9rZW47CiAjZW5kaWYKIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogICAgIFJlZlB0cjxXZWJJREJDb25uZWN0aW9u
VG9TZXJ2ZXI+IG1fd2ViSURCQ29ubmVjdGlvbjsKLSNlbmRpZgogCiAjaWYgRU5BQkxFKFNFUlZJ
Q0VfV09SS0VSKQogICAgIFJlZlB0cjxXZWJTV0NsaWVudENvbm5lY3Rpb24+IG1fc3dDb25uZWN0
aW9uOwpJbmRleDogU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvV2ViUHJv
Y2Vzcy9TdG9yYWdlL1dlYlNXQ29udGV4dE1hbmFnZXJDb25uZWN0aW9uLmNwcAkocmV2aXNpb24g
Mjc1MTIzKQorKysgU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1N0b3JhZ2UvV2ViU1dDb250ZXh0
TWFuYWdlckNvbm5lY3Rpb24uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMzksOSArMTM5LDcgQEAg
dm9pZCBXZWJTV0NvbnRleHRNYW5hZ2VyQ29ubmVjdGlvbjo6aW5zdAogewogICAgIGF1dG8gcGFn
ZUNvbmZpZ3VyYXRpb24gPSBwYWdlQ29uZmlndXJhdGlvbldpdGhFbXB0eUNsaWVudHMoV2ViUHJv
Y2Vzczo6c2luZ2xldG9uKCkuc2Vzc2lvbklEKCkpOwogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCiAgICAgcGFnZUNvbmZpZ3VyYXRpb24uZGF0YWJhc2VQcm92aWRlciA9IFdlYkRhdGFi
YXNlUHJvdmlkZXI6OmdldE9yQ3JlYXRlKG1fcGFnZUdyb3VwSUQpOwotI2VuZGlmCiAgICAgcGFn
ZUNvbmZpZ3VyYXRpb24uc29ja2V0UHJvdmlkZXIgPSBXZWJTb2NrZXRQcm92aWRlcjo6Y3JlYXRl
KG1fd2ViUGFnZVByb3h5SUQpOwogICAgIHBhZ2VDb25maWd1cmF0aW9uLnVzZXJDb250ZW50UHJv
dmlkZXIgPSBtX3VzZXJDb250ZW50Q29udHJvbGxlcjsKICNpZiBFTkFCTEUoV0VCX1JUQykKSW5k
ZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXRMZWdhY3kvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0
TGVnYWN5L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDIxLTAz
LTI2ICBTYW0gV2VpbmlnICA8d2VpbmlnQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgRU5B
QkxFX0lOREVYRURfREFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJT
LCBpdCBzZWVtcyBsaWtlIGl0IGlzIG9uIGZvciBhbGwgcG9ydHMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyMzgxMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRB
QkFTRSAmIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgY29uZGl0aW9uYWxzLgor
CisgICAgICAgICogU3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIuY3BwOgorICAgICAgICAoSW5Q
cm9jZXNzSURCU2VydmVyOjpkaXNwYXRjaFRhc2tSZXBseSk6CisgICAgICAgICogU3RvcmFnZS9J
blByb2Nlc3NJREJTZXJ2ZXIuaDoKKyAgICAgICAgKiBTdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlk
ZXIuY3BwOgorICAgICAgICAoV2ViRGF0YWJhc2VQcm92aWRlcjo6ZGVsZXRlQWxsRGF0YWJhc2Vz
KToKKyAgICAgICAgKiBTdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuaDoKKwogMjAyMS0wMy0y
NiAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIFtDTWFr
ZV0gRGVwcmVjYXRlIHVzaW5nIERFUklWRURfU09VUkNFU19ESVIvRk9XQVJESU5HX0hFQURFUlNf
RElSIGRpcmVjdGx5CkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvSW5Qcm9jZXNz
SURCU2VydmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2Uv
SW5Qcm9jZXNzSURCU2VydmVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktp
dExlZ2FjeS9TdG9yYWdlL0luUHJvY2Vzc0lEQlNlcnZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTI1LDggKzI1LDYgQEAKIAogI2luY2x1ZGUgIkluUHJvY2Vzc0lEQlNlcnZlci5oIgogCi0jaWYg
RU5BQkxFKElOREVYRURfREFUQUJBU0UpCi0KICNpbmNsdWRlICJTdG9yYWdlVGhyZWFkLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9DbGllbnRPcmlnaW4uaD4KICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNv
bm5lY3Rpb25Ub0NsaWVudC5oPgpAQCAtNTEwLDUgKzUwOCwzIEBAIHZvaWQgSW5Qcm9jZXNzSURC
U2VydmVyOjpkaXNwYXRjaFRhc2tSZXAKICAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKICAg
ICBjYWxsT25NYWluVGhyZWFkKFdURk1vdmUoZnVuY3Rpb24pKTsKIH0KLQotI2VuZGlmIC8vIEVO
QUJMRShJTkRFWEVEX0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdl
L0luUHJvY2Vzc0lEQlNlcnZlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kv
U3RvcmFnZS9JblByb2Nlc3NJREJTZXJ2ZXIuaAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNl
L1dlYktpdExlZ2FjeS9TdG9yYWdlL0luUHJvY2Vzc0lEQlNlcnZlci5oCSh3b3JraW5nIGNvcHkp
CkBAIC0yNSw4ICsyNSw2IEBACiAKICNwcmFnbWEgb25jZQogCi0jaWYgRU5BQkxFKElOREVYRURf
REFUQUJBU0UpCi0KICNpbmNsdWRlIDxXZWJDb3JlL0lEQkNvbm5lY3Rpb25Ub0NsaWVudC5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvSURCQ29ubmVjdGlvblRvU2VydmVyLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9JREJTZXJ2ZXIuaD4KQEAgLTEzNSw1ICsxMzMsMyBAQCBwcml2YXRlOgogCiAgICAgSGFz
aE1hcDxXZWJDb3JlOjpDbGllbnRPcmlnaW4sIFJlZlB0cjxXZWJDb3JlOjpTdG9yYWdlUXVvdGFN
YW5hZ2VyPj4gbV9xdW90YU1hbmFnZXJzOwogfTsKLQotI2VuZGlmIC8vIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQpJbmRleDogU291cmNlL1dlYktpdExlZ2FjeS9TdG9yYWdlL1dlYkRhdGFiYXNl
UHJvdmlkZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdhY3kvU3RvcmFnZS9X
ZWJEYXRhYmFzZVByb3ZpZGVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktp
dExlZ2FjeS9TdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00Miw3ICs0Miw2IEBAIFdlYkRhdGFiYXNlUHJvdmlkZXI6On5XZWJEYXRhYmFzZVByb3ZpZGUK
IHsKIH0KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogV2ViQ29yZTo6SURCQ2xpZW50
OjpJREJDb25uZWN0aW9uVG9TZXJ2ZXImIFdlYkRhdGFiYXNlUHJvdmlkZXI6OmlkYkNvbm5lY3Rp
b25Ub1NlcnZlckZvclNlc3Npb24oY29uc3QgUEFMOjpTZXNzaW9uSUQmIHNlc3Npb25JRCkKIHsK
ICAgICByZXR1cm4gbV9pZGJTZXJ2ZXJNYXAuZW5zdXJlKHNlc3Npb25JRCwgWyZzZXNzaW9uSURd
IHsKQEAgLTU1LDUgKzU0LDMgQEAgdm9pZCBXZWJEYXRhYmFzZVByb3ZpZGVyOjpkZWxldGVBbGxE
YXRhYgogICAgIGZvciAoYXV0byYgc2VydmVyIDogbV9pZGJTZXJ2ZXJNYXAudmFsdWVzKCkpCiAg
ICAgICAgIHNlcnZlci0+Y2xvc2VBbmREZWxldGVEYXRhYmFzZXNNb2RpZmllZFNpbmNlKC1XYWxs
VGltZTo6aW5maW5pdHkoKSk7CiB9Ci0KLSNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdExlZ2Fj
eS9TdG9yYWdlL1dlYkRhdGFiYXNlUHJvdmlkZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRlci5oCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvV2ViS2l0TGVnYWN5L1N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRlci5oCSh3
b3JraW5nIGNvcHkpCkBAIC0yNSwzMyArMjUsMjYgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNs
dWRlICJJblByb2Nlc3NJREJTZXJ2ZXIuaCIKICNpbmNsdWRlIDxXZWJDb3JlL0RhdGFiYXNlUHJv
dmlkZXIuaD4KICNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFw
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCi0jaW5jbHVkZSAiSW5Qcm9jZXNzSURCU2VydmVyLmgiCi0jZW5kaWYKLQogY2xhc3MgV2Vi
RGF0YWJhc2VQcm92aWRlciBmaW5hbCA6IHB1YmxpYyBXZWJDb3JlOjpEYXRhYmFzZVByb3ZpZGVy
IHsKICAgICBmcmllbmQgY2xhc3MgTmV2ZXJEZXN0cm95ZWQ8V2ViRGF0YWJhc2VQcm92aWRlcj47
CiBwdWJsaWM6CiAgICAgc3RhdGljIFdlYkRhdGFiYXNlUHJvdmlkZXImIHNpbmdsZXRvbigpOwog
ICAgIHZpcnR1YWwgfldlYkRhdGFiYXNlUHJvdmlkZXIoKTsKIAotI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQogICAgIFdlYkNvcmU6OklEQkNsaWVudDo6SURCQ29ubmVjdGlvblRvU2VydmVy
JiBpZGJDb25uZWN0aW9uVG9TZXJ2ZXJGb3JTZXNzaW9uKGNvbnN0IFBBTDo6U2Vzc2lvbklEJikg
b3ZlcnJpZGU7CiAKICAgICB2b2lkIGRlbGV0ZUFsbERhdGFiYXNlcygpOwotI2VuZGlmCiAKIHBy
aXZhdGU6CiAgICAgZXhwbGljaXQgV2ViRGF0YWJhc2VQcm92aWRlcigpOwogCiAgICAgc3RhdGlj
IFN0cmluZyBpbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlQYXRoKCk7CiAKLSNpZiBFTkFCTEUoSU5E
RVhFRF9EQVRBQkFTRSkKICAgICBIYXNoTWFwPFBBTDo6U2Vzc2lvbklELCBSZWZQdHI8SW5Qcm9j
ZXNzSURCU2VydmVyPj4gbV9pZGJTZXJ2ZXJNYXA7Ci0jZW5kaWYKIH07CkluZGV4OiBTb3VyY2Uv
V2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExl
Z2FjeS9tYWMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjMpCisrKyBTb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNSBAQAorMjAyMS0w
My0yNiAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIEVO
QUJMRV9JTkRFWEVEX0RBVEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09SS0VS
UywgaXQgc2VlbXMgbGlrZSBpdCBpcyBvbiBmb3IgYWxsIHBvcnRzCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM4MTAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURfREFU
QUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGNvbmRpdGlvbmFscy4K
KworICAgICAgICAqIFN0b3JhZ2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tOgorICAgICAgICAoLVtX
ZWJEYXRhYmFzZU1hbmFnZXIgZGVsZXRlQWxsSW5kZXhlZERhdGFiYXNlc10pOgorCiAyMDIxLTAz
LTI2ICBKZXNzaWUgQmVybGluICA8amJlcmxpbkB3ZWJraXQub3JnPgogCiAgICAgICAgIFVwZGF0
ZSB0aGUgQkVGT1JFL1NJTkNFLCBTWVNURU1fVkVSU0lPTl9QUkVGSVgsIGFuZCBNQUNPU1hfREVQ
TE9ZTUVOVF9UQVJHRVQgZmxhZ3MKSW5kZXg6IFNvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1N0b3Jh
Z2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1N0b3JhZ2UvV2ViRGF0YWJhc2VNYW5hZ2VyLm1tCShyZXZpc2lvbiAyNzUxMjMpCisr
KyBTb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9TdG9yYWdlL1dlYkRhdGFiYXNlTWFuYWdlci5tbQko
d29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogI2ltcG9ydCAiV2ViRGF0YWJhc2VNYW5h
Z2VyUHJpdmF0ZS5oIgogCiAjaW1wb3J0ICJXZWJEYXRhYmFzZU1hbmFnZXJDbGllbnQuaCIKKyNp
bXBvcnQgIldlYkRhdGFiYXNlUHJvdmlkZXIuaCIKICNpbXBvcnQgIldlYlBsYXRmb3JtU3RyYXRl
Z2llcy5oIgogI2ltcG9ydCAiV2ViU2VjdXJpdHlPcmlnaW5JbnRlcm5hbC5oIgogI2ltcG9ydCA8
V2ViQ29yZS9EYXRhYmFzZU1hbmFnZXIuaD4KQEAgLTM2LDEwICszNyw2IEBACiAjaW1wb3J0IDxX
ZWJDb3JlL1NlY3VyaXR5T3JpZ2luLmg+CiAjaW1wb3J0IDx3dGYvY29jb2EvVmVjdG9yQ29jb2Eu
aD4KIAotI2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQotI2ltcG9ydCAiV2ViRGF0YWJhc2VQ
cm92aWRlci5oIgotI2VuZGlmCi0KICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCAi
V2ViRGF0YWJhc2VNYW5hZ2VySW50ZXJuYWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvRGF0YWJhc2VU
cmFja2VyLmg+CkBAIC0xNDMsOSArMTQwLDcgQEAgLSAoQk9PTClkZWxldGVEYXRhYmFzZTooTlNT
dHJpbmcgKilkYXRhYgogLy8gRm9yIER1bXBSZW5kZXJUcmVlIHN1cHBvcnQgb25seQogLSAodm9p
ZClkZWxldGVBbGxJbmRleGVkRGF0YWJhc2VzCiB7Ci0jaWYgRU5BQkxFKElOREVYRURfREFUQUJB
U0UpCiAgICAgV2ViRGF0YWJhc2VQcm92aWRlcjo6c2luZ2xldG9uKCkuZGVsZXRlQWxsRGF0YWJh
c2VzKCk7Ci0jZW5kaWYKIH0KIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktp
dExlZ2FjeS93aW4vQ2hhbmdlTG9nCShyZXZpc2lvbiAyNzUxMjYpCisrKyBTb3VyY2UvV2ViS2l0
TGVnYWN5L3dpbi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBAQAorMjAy
MS0wMy0yNiAgU2FtIFdlaW5pZyAgPHdlaW5pZ0BhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3Zl
IEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFICYgRU5BQkxFX0lOREVYRURfREFUQUJBU0VfSU5fV09S
S0VSUywgaXQgc2VlbXMgbGlrZSBpdCBpcyBvbiBmb3IgYWxsIHBvcnRzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjM4MTAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgRU5BQkxFX0lOREVYRURf
REFUQUJBU0UgJiBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIGNvbmRpdGlvbmFs
cy4KKworICAgICAgICAqIFdlYkRhdGFiYXNlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJEYXRh
YmFzZU1hbmFnZXI6OmRlbGV0ZUFsbEluZGV4ZWREYXRhYmFzZXMpOgorICAgICAgICAqIHN0b3Jh
Z2UvV2ViRGF0YWJhc2VQcm92aWRlci5jcHA6CisgICAgICAgIChXZWJEYXRhYmFzZVByb3ZpZGVy
OjppbmRleGVkRGF0YWJhc2VEaXJlY3RvcnlQYXRoKToKKwogMjAyMS0wMy0yMiAgRGV2aW4gUm91
c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIHVudXNlZCBKUyBhbmQg
Q1NTIGZpbGVzIG9mIG1lZGlhIGNvbnRyb2xzCkluZGV4OiBTb3VyY2UvV2ViS2l0TGVnYWN5L3dp
bi9XZWJEYXRhYmFzZU1hbmFnZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXRMZWdh
Y3kvd2luL1dlYkRhdGFiYXNlTWFuYWdlci5jcHAJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL1dlYkRhdGFiYXNlTWFuYWdlci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTMyLDYgKzMyLDcgQEAKICNpbmNsdWRlICJDT01FbnVtVmFyaWFudC5oIgogI2luY2x1ZGUg
IkNPTVByb3BlcnR5QmFnLmgiCiAjaW5jbHVkZSAiTWFyc2hhbGxpbmdIZWxwZXJzLmgiCisjaW5j
bHVkZSAiV2ViRGF0YWJhc2VQcm92aWRlci5oIgogI2luY2x1ZGUgIldlYk5vdGlmaWNhdGlvbkNl
bnRlci5oIgogI2luY2x1ZGUgIldlYlByZWZlcmVuY2VzLmgiCiAjaW5jbHVkZSAiV2ViU2VjdXJp
dHlPcmlnaW4uaCIKQEAgLTQ0LDEwICs0NSw2IEBACiAjaW5jbHVkZSA8d3RmL0ZpbGVTeXN0ZW0u
aD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogCi0jaWYgRU5BQkxFKElOREVYRURfREFU
QUJBU0UpCi0jaW5jbHVkZSAiV2ViRGF0YWJhc2VQcm92aWRlci5oIgotI2VuZGlmCi0KIHVzaW5n
IG5hbWVzcGFjZSBXZWJDb3JlOwogCiAjaWYgVVNFKENGKQpAQCAtMzQwLDkgKzMzNyw3IEBAIEhS
RVNVTFQgV2ViRGF0YWJhc2VNYW5hZ2VyOjpkZWxldGVEYXRhYmEKIAogSFJFU1VMVCBXZWJEYXRh
YmFzZU1hbmFnZXI6OmRlbGV0ZUFsbEluZGV4ZWREYXRhYmFzZXMoKQogewotI2lmIEVOQUJMRShJ
TkRFWEVEX0RBVEFCQVNFKQogICAgIFdlYkRhdGFiYXNlUHJvdmlkZXI6OnNpbmdsZXRvbigpLmRl
bGV0ZUFsbERhdGFiYXNlcygpOwotI2VuZGlmCiAgICAgcmV0dXJuIFNfT0s7CiB9CiAKSW5kZXg6
IFNvdXJjZS9XZWJLaXRMZWdhY3kvd2luL3N0b3JhZ2UvV2ViRGF0YWJhc2VQcm92aWRlci5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdExlZ2FjeS93aW4vc3RvcmFnZS9XZWJEYXRhYmFz
ZVByb3ZpZGVyLmNwcAkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL1dlYktpdExlZ2FjeS93
aW4vc3RvcmFnZS9XZWJEYXRhYmFzZVByb3ZpZGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgs
NyArMjgsNiBAQAogI2luY2x1ZGUgPHNobG9iai5oPgogI2luY2x1ZGUgPHNobHdhcGkuaD4KIAot
I2lmIEVOQUJMRShJTkRFWEVEX0RBVEFCQVNFKQogU3RyaW5nIFdlYkRhdGFiYXNlUHJvdmlkZXI6
OmluZGV4ZWREYXRhYmFzZURpcmVjdG9yeVBhdGgoKQogewogICAgIGNoYXIgZXhlY3V0YWJsZVBh
dGhbTUFYX1BBVEhdOwpAQCAtNTAsNCArNDksMyBAQCBTdHJpbmcgV2ViRGF0YWJhc2VQcm92aWRl
cjo6aW5kZXhlZERhdGFiCiAKICAgICByZXR1cm4gU3RyaW5nKGRhdGFiYXNlRGlyZWN0b3J5KTsK
IH0KLSNlbmRpZgpJbmRleDogU291cmNlL2NtYWtlL09wdGlvbnNGVFcuY21ha2UKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL2NtYWtlL09wdGlvbnNGVFcuY21ha2UJKHJldmlzaW9uIDI3NTEyMykKKysr
IFNvdXJjZS9jbWFrZS9PcHRpb25zRlRXLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBAIC04MSw3ICs4
MSw2IEBAIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV8KIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9GVFBESVIgUFJJVkFURSBPTikKIFdFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSBQUklWQVRF
IE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HRU9MT0NBVElP
TiBQUklWQVRFIE9OKQotV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lO
REVYRURfREFUQUJBU0UgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9JTlRFUlNFQ1RJT05fT0JTRVJWRVIgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9NQUNfR0VTVFVSRV9FVkVOVFMgUFJJVkFURSBP
RkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfTUFUSE1MIFBSSVZB
VEUgT04pCkluZGV4OiBTb3VyY2UvY21ha2UvT3B0aW9uc01hYy5jbWFrZQo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvY21ha2UvT3B0aW9uc01hYy5jbWFrZQkocmV2aXNpb24gMjc1MTIzKQorKysgU291
cmNlL2NtYWtlL09wdGlvbnNNYWMuY21ha2UJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDggKzQ2LDYg
QEAgV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFXwogV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX1BJQ1RVUkVfSU5fUElDVFVSRV9BUEkgUFJJVkFU
RSBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9HQU1FUEFEIFBS
SVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfR0VPTE9D
QVRJT04gUFJJVkFURSBPTikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFIFBSSVZBVEUgT04pCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9S
VF9WQUxVRShFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRV9JTl9XT1JLRVJTIFBSSVZBVEUgT04pCiBX
RUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUiBQ
UklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0lOU1BF
Q1RPUl9BTFRFUk5BVEVfRElTUEFUQ0hFUlMgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlNQRUNUT1JfRVhURU5TSU9OUyBQUklWQVRFIE9OKQpJ
bmRleDogU291cmNlL2NtYWtlL09wdGlvbnNXaW4uY21ha2UKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L2NtYWtlL09wdGlvbnNXaW4uY21ha2UJKHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9jbWFr
ZS9PcHRpb25zV2luLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0zMyw4ICszMyw2IEBAIFdFQktJ
VF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV8KIFdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSBQVUJMSUMgT04pCiBXRUJLSVRfT1BU
SU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfR0FNRVBBRCBQVUJMSUMgT0ZGKQogV0VCS0lU
X09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0dFT0xPQ0FUSU9OIFBVQkxJQyBPTikK
LVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNF
IFBVQkxJQyBPTikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgUFVCTElDIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgUFVCTElDIE9GRikKIFdFQktJVF9P
UFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUgUFVCTElDIE9G
RikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9JTlBVVF9UWVBFX0RB
VEVUSU1FTE9DQUwgUFVCTElDIE9GRikKSW5kZXg6IFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJl
cy5jbWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvY21ha2UvV2ViS2l0RmVhdHVyZXMuY21ha2UJ
KHJldmlzaW9uIDI3NTEyMykKKysrIFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQko
d29ya2luZyBjb3B5KQpAQCAtMTcxLDggKzE3MSw2IEBAIG1hY3JvKFdFQktJVF9PUFRJT05fQkVH
SU4pCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0dBTUVQQUQgIlRvZ2dsZSBHYW1l
cGFkIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJM
RV9HRU9MT0NBVElPTiAiVG9nZ2xlIEdlb2xvY2F0aW9uIHN1cHBvcnQiIFBSSVZBVEUgT04pCiAg
ICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0dQVV9QUk9DRVNTICJUb2dnbGUgR1BVIFBy
b2Nlc3Mgc3VwcG9ydCIgUFJJVkFURSBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5B
QkxFX0lOREVYRURfREFUQUJBU0UgIlRvZ2dsZSBJbmRleGVkIERhdGFiYXNlIHN1cHBvcnQiIFBS
SVZBVEUgT04pCi0gICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0lOREVYRURfREFUQUJB
U0VfSU5fV09SS0VSUyAiVG9nZ2xlIHN1cHBvcnQgZm9yIEluZGV4ZWQgRGF0YWJhc2UgaW4gd29y
a2VycyIgUFJJVkFURSBPTikKICAgICBXRUJLSVRfT1BUSU9OX0RFRklORShFTkFCTEVfSU5QVVRf
VFlQRV9DT0xPUiAiVG9nZ2xlIElucHV0IFR5cGUgQ29sb3Igc3VwcG9ydCIgUFJJVkFURSBPRkYp
CiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0lOUFVUX1RZUEVfREFURSAiVG9nZ2xl
IElucHV0IFR5cGUgRGF0ZSBzdXBwb3J0IiBQUklWQVRFIE9GRikKICAgICBXRUJLSVRfT1BUSU9O
X0RFRklORShFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FMICJUb2dnbGUgSW5wdXQgVHlw
ZSBEYXRldGltZWxvY2FsIHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQpAQCAtMjc0LDcgKzI3Miw2IEBA
IG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09QVElPTl9ERVBFTkQoRU5B
QkxFX0ZUTF9KSVQgRU5BQkxFX0RGR19KSVQpCiAgICAgV0VCS0lUX09QVElPTl9ERVBFTkQoRU5B
QkxFX1dFQkFTU0VNQkxZIEVOQUJMRV9KSVQpCiAgICAgV0VCS0lUX09QVElPTl9ERVBFTkQoRU5B
QkxFX1dFQkFTU0VNQkxZX0IzSklUIEVOQUJMRV9GVExfSklUKQotICAgIFdFQktJVF9PUFRJT05f
REVQRU5EKEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgRU5BQkxFX0lOREVYRURf
REFUQUJBU0UpCiAgICAgV0VCS0lUX09QVElPTl9ERVBFTkQoRU5BQkxFX0lOU1BFQ1RPUl9BTFRF
Uk5BVEVfRElTUEFUQ0hFUlMgRU5BQkxFX1JFTU9URV9JTlNQRUNUT1IpCiAgICAgV0VCS0lUX09Q
VElPTl9ERVBFTkQoRU5BQkxFX01FRElBX0NPTlRST0xTX1NDUklQVCBFTkFCTEVfVklERU8pCiAg
ICAgV0VCS0lUX09QVElPTl9ERVBFTkQoRU5BQkxFX01FRElBX1NPVVJDRSBFTkFCTEVfVklERU8p
CkluZGV4OiBTb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy5wcm9wcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lcy5w
cm9wcwkocmV2aXNpb24gMjc1MTIzKQorKysgU291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJvcHMvRmVh
dHVyZURlZmluZXMucHJvcHMJKHdvcmtpbmcgY29weSkKQEAgLTI4LDcgKzI4LDYgQEAKICAgICA8
RU5BQkxFX0dBTUVQQUQgLz4KICAgICA8RU5BQkxFX0dFT0xPQ0FUSU9OPkVOQUJMRV9HRU9MT0NB
VElPTjwvRU5BQkxFX0dFT0xPQ0FUSU9OPgogICAgIDxFTkFCTEVfSElHSF9EUElfQ0FOVkFTPkVO
QUJMRV9ISUdIX0RQSV9DQU5WQVM8L0VOQUJMRV9ISUdIX0RQSV9DQU5WQVM+Ci0gICAgPEVOQUJM
RV9JTkRFWEVEX0RBVEFCQVNFIC8+CiAgICAgPEVOQUJMRV9JTlBVVF9TUEVFQ0ggLz4KICAgICA8
RU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IgLz4KICAgICA8RU5BQkxFX0lOUFVUX1RZUEVfREFURSAv
PgpAQCAtNjYsNyArNjUsNyBAQAogICA8L1Byb3BlcnR5R3JvdXA+CiAgIDxJdGVtRGVmaW5pdGlv
bkdyb3VwPgogICAgIDxDbENvbXBpbGU+Ci0gICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlvbnM+
JChFTkFCTEVfM0RfVFJBTlNGT1JNUyk7JChFTkFCTEVfT1ZFUkZMT1dfU0NST0xMSU5HX1RPVUNI
KTskKEVOQUJMRV9BVFRBQ0hNRU5UX0VMRU1FTlQpOyQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5H
KTskKEVOQUJMRV9DU1MzX0NPTkRJVElPTkFMX1JVTEVTKTskKEVOQUJMRV9DU1NfSU1BR0VfU0VU
KTskKEVOQUJMRV9DU1MzX1RFWFQpOyQoRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSyk7
JChFTkFCTEVfQ1NTX1NIQURFUlMpOyQoRU5BQkxFX0NTU19DT01QT1NJVElORyk7JChFTkFCTEVf
Q1NTX1NFTEVDVE9SU19MRVZFTDQpOyQoRU5BQkxFX0NTU19TSEFQRV9JTlNJREUpOyQoRU5BQkxF
X0NTU19UUkFOU0ZPUk1TX0FOSU1BVElPTlNfVFJBTlNJVElPTlNfVU5QUkVGSVhFRCk7JChFTkFC
TEVfQ1VSU09SX1ZJU0lCSUxJVFkpOyQoRU5BQkxFX0NVU1RPTV9TQ0hFTUVfSEFORExFUik7JChF
TkFCTEVfREFSS19NT0RFX0NTUyk7JChFTkFCTEVfREFUQUdSSUQpOyQoRU5BQkxFX0RBVEFMSVNU
X0VMRU1FTlQpOyQoRU5BQkxFX0RFVklDRV9PUklFTlRBVElPTik7JChFTkFCTEVfRElSRUNUT1JZ
X1VQTE9BRCk7JChFTkFCTEVfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9GRVRDSF9BUEkpOyQo
RU5BQkxFX0ZJTEVfU1lTVEVNKTskKEVOQUJMRV9GVUxMU0NSRUVOX0FQSSk7JChFTkFCTEVfR0FN
RVBBRCk7JChFTkFCTEVfR0VPTE9DQVRJT04pOyQoRU5BQkxFX0hJR0hfRFBJX0NBTlZBUyk7JChF
TkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9DT0xPUik7JChFTkFC
TEVfSU5QVVRfU1BFRUNIKTskKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUpOyQoRU5BQkxFX0lOUFVU
X1RZUEVfREFURVRJTUVMT0NBTCk7JChFTkFCTEVfSU5QVVRfVFlQRV9NT05USCk7JChFTkFCTEVf
SU5QVVRfVFlQRV9USU1FKTskKEVOQUJMRV9JTlBVVF9UWVBFX1dFRUspOyQoRU5BQkxFX0xFR0FD
WV9FTkNSWVBURURfTUVESUEpOyQoRU5BQkxFX0xJTktfUFJFUkVOREVSKTskKEVOQUJMRV9NQVRI
TUwpOyQoRU5BQkxFX01JQ1JPREFUQSk7JChFTkFCTEVfTU9VU0VfQ1VSU09SX1NDQUxFKTskKEVO
QUJMRV9OT1RJRklDQVRJT05TKTskKEVOQUJMRV9TQ1JJUFRFRF9TUEVFQ0gpOyQoRU5BQkxFX1NI
QVJFRF9XT1JLRVJTKTskKEVOQUJMRV9NRURJQV9DT05UUk9MU19TQ1JJUFQpOyQoRU5BQkxFX01F
RElBX1NPVVJDRSk7JChFTkFCTEVfTUVESUFfU1RBVElTVElDUyk7JChFTkFCTEVfU1FMX0RBVEFC
QVNFKTskKEVOQUJMRV9TVFlMRV9TQ09QRUQpOyQoRU5BQkxFX1NVQlBJWEVMX0xBWU9VVCk7JChF
TkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKTskKEVOQUJMRV9WSURFTyk7JChFTkFCTEVfV0VC
X0FVRElPKTskKEVOQUJMRV9XRUJHTCk7JChFTkFCTEVfV0VCR1BVKTskKEVOQUJMRV9XRUJYUik7
JChFTkFCTEVfWEhSX1RJTUVPVVQpOyQoRU5BQkxFX1hTTFQpOyUoUHJlcHJvY2Vzc29yRGVmaW5p
dGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4KKyAgICAgIDxQcmVwcm9jZXNzb3JEZWZp
bml0aW9ucz4kKEVOQUJMRV8zRF9UUkFOU0ZPUk1TKTskKEVOQUJMRV9PVkVSRkxPV19TQ1JPTExJ
TkdfVE9VQ0gpOyQoRU5BQkxFX0FUVEFDSE1FTlRfRUxFTUVOVCk7JChFTkFCTEVfQ0hBTk5FTF9N
RVNTQUdJTkcpOyQoRU5BQkxFX0NTUzNfQ09ORElUSU9OQUxfUlVMRVMpOyQoRU5BQkxFX0NTU19J
TUFHRV9TRVQpOyQoRU5BQkxFX0NTUzNfVEVYVCk7JChFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9O
X0JSRUFLKTskKEVOQUJMRV9DU1NfU0hBREVSUyk7JChFTkFCTEVfQ1NTX0NPTVBPU0lUSU5HKTsk
KEVOQUJMRV9DU1NfU0VMRUNUT1JTX0xFVkVMNCk7JChFTkFCTEVfQ1NTX1NIQVBFX0lOU0lERSk7
JChFTkFCTEVfQ1NTX1RSQU5TRk9STVNfQU5JTUFUSU9OU19UUkFOU0lUSU9OU19VTlBSRUZJWEVE
KTskKEVOQUJMRV9DVVJTT1JfVklTSUJJTElUWSk7JChFTkFCTEVfQ1VTVE9NX1NDSEVNRV9IQU5E
TEVSKTskKEVOQUJMRV9EQVJLX01PREVfQ1NTKTskKEVOQUJMRV9EQVRBR1JJRCk7JChFTkFCTEVf
REFUQUxJU1RfRUxFTUVOVCk7JChFTkFCTEVfREVWSUNFX09SSUVOVEFUSU9OKTskKEVOQUJMRV9E
SVJFQ1RPUllfVVBMT0FEKTskKEVOQUJMRV9FTkNSWVBURURfTUVESUEpOyQoRU5BQkxFX0ZFVENI
X0FQSSk7JChFTkFCTEVfRklMRV9TWVNURU0pOyQoRU5BQkxFX0ZVTExTQ1JFRU5fQVBJKTskKEVO
QUJMRV9HQU1FUEFEKTskKEVOQUJMRV9HRU9MT0NBVElPTik7JChFTkFCTEVfSElHSF9EUElfQ0FO
VkFTKTskKEVOQUJMRV9JTlBVVF9UWVBFX0NPTE9SKTskKEVOQUJMRV9JTlBVVF9TUEVFQ0gpOyQo
RU5BQkxFX0lOUFVUX1RZUEVfREFURSk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFVElNRUxPQ0FM
KTskKEVOQUJMRV9JTlBVVF9UWVBFX01PTlRIKTskKEVOQUJMRV9JTlBVVF9UWVBFX1RJTUUpOyQo
RU5BQkxFX0lOUFVUX1RZUEVfV0VFSyk7JChFTkFCTEVfTEVHQUNZX0VOQ1JZUFRFRF9NRURJQSk7
JChFTkFCTEVfTElOS19QUkVSRU5ERVIpOyQoRU5BQkxFX01BVEhNTCk7JChFTkFCTEVfTUlDUk9E
QVRBKTskKEVOQUJMRV9NT1VTRV9DVVJTT1JfU0NBTEUpOyQoRU5BQkxFX05PVElGSUNBVElPTlMp
OyQoRU5BQkxFX1NDUklQVEVEX1NQRUVDSCk7JChFTkFCTEVfU0hBUkVEX1dPUktFUlMpOyQoRU5B
QkxFX01FRElBX0NPTlRST0xTX1NDUklQVCk7JChFTkFCTEVfTUVESUFfU09VUkNFKTskKEVOQUJM
RV9NRURJQV9TVEFUSVNUSUNTKTskKEVOQUJMRV9TUUxfREFUQUJBU0UpOyQoRU5BQkxFX1NUWUxF
X1NDT1BFRCk7JChFTkFCTEVfU1VCUElYRUxfTEFZT1VUKTskKEVOQUJMRV9TVkdfRE9NX09CSkNf
QklORElOR1MpOyQoRU5BQkxFX1ZJREVPKTskKEVOQUJMRV9XRUJfQVVESU8pOyQoRU5BQkxFX1dF
QkdMKTskKEVOQUJMRV9XRUJHUFUpOyQoRU5BQkxFX1dFQlhSKTskKEVOQUJMRV9YSFJfVElNRU9V
VCk7JChFTkFCTEVfWFNMVCk7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3Nv
ckRlZmluaXRpb25zPgogICAgIDwvQ2xDb21waWxlPgogICA8L0l0ZW1EZWZpbml0aW9uR3JvdXA+
CiAgIDxJdGVtR3JvdXA+CkBAIC0xNzgsMTAgKzE3Nyw2IEBACiAgICAgICA8VmFsdWU+JChFTkFC
TEVfSElHSF9EUElfQ0FOVkFTKTwvVmFsdWU+CiAgICAgICA8RW52aXJvbm1lbnRWYXJpYWJsZT50
cnVlPC9FbnZpcm9ubWVudFZhcmlhYmxlPgogICAgIDwvQnVpbGRNYWNybz4KLSAgICA8QnVpbGRN
YWNybyBJbmNsdWRlPSJFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSI+Ci0gICAgICA8VmFsdWU+JChF
TkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk8L1ZhbHVlPgotICAgICAgPEVudmlyb25tZW50VmFyaWFi
bGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KLSAgICA8L0J1aWxkTWFjcm8+CiAgICAgPEJ1
aWxkTWFjcm8gSW5jbHVkZT0iRU5BQkxFX0lOUFVUX1NQRUVDSCI+CiAgICAgICA8VmFsdWU+JChF
TkFCTEVfSU5QVVRfU1BFRUNIKTwvVmFsdWU+CiAgICAgICA8RW52aXJvbm1lbnRWYXJpYWJsZT50
cnVlPC9FbnZpcm9ubWVudFZhcmlhYmxlPgpJbmRleDogU291cmNlL2NtYWtlL3Rvb2xzL3ZzcHJv
cHMvRmVhdHVyZURlZmluZXNDYWlyby5wcm9wcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvY21ha2Uv
dG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0NhaXJvLnByb3BzCShyZXZpc2lvbiAyNzUxMjMp
CisrKyBTb3VyY2UvY21ha2UvdG9vbHMvdnNwcm9wcy9GZWF0dXJlRGVmaW5lc0NhaXJvLnByb3Bz
CSh3b3JraW5nIGNvcHkpCkBAIC0yOCw3ICsyOCw2IEBACiAgICAgPEVOQUJMRV9HQU1FUEFEIC8+
CiAgICAgPEVOQUJMRV9HRU9MT0NBVElPTj5FTkFCTEVfR0VPTE9DQVRJT048L0VOQUJMRV9HRU9M
T0NBVElPTj4KICAgICA8RU5BQkxFX0hJR0hfRFBJX0NBTlZBUz5FTkFCTEVfSElHSF9EUElfQ0FO
VkFTPC9FTkFCTEVfSElHSF9EUElfQ0FOVkFTPgotICAgIDxFTkFCTEVfSU5ERVhFRF9EQVRBQkFT
RSAvPgogICAgIDxFTkFCTEVfSU5QVVRfU1BFRUNIIC8+CiAgICAgPEVOQUJMRV9JTlBVVF9UWVBF
X0NPTE9SIC8+CiAgICAgPEVOQUJMRV9JTlBVVF9UWVBFX0RBVEUgLz4KQEAgLTY2LDcgKzY1LDcg
QEAKICAgPC9Qcm9wZXJ0eUdyb3VwPgogICA8SXRlbURlZmluaXRpb25Hcm91cD4KICAgICA8Q2xD
b21waWxlPgotICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPiQoRU5BQkxFXzNEX1RSQU5T
Rk9STVMpOyQoRU5BQkxFX09WRVJGTE9XX1NDUk9MTElOR19UT1VDSCk7JChFTkFCTEVfQVRUQUNI
TUVOVF9FTEVNRU5UKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ1NTM19D
T05ESVRJT05BTF9SVUxFUyk7JChFTkFCTEVfQ1NTX0lNQUdFX1NFVCk7JChFTkFCTEVfQ1NTM19U
RVhUKTskKEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspOyQoRU5BQkxFX0NTU19TSEFE
RVJTKTskKEVOQUJMRV9DU1NfQ09NUE9TSVRJTkcpOyQoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVW
RUw0KTskKEVOQUJMRV9DU1NfU0hBUEVfSU5TSURFKTskKEVOQUJMRV9DU1NfVFJBTlNGT1JNU19B
TklNQVRJT05TX1RSQU5TSVRJT05TX1VOUFJFRklYRUQpOyQoRU5BQkxFX0NVUlNPUl9WSVNJQklM
SVRZKTskKEVOQUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpOyQoRU5BQkxFX0RBUktfTU9ERV9D
U1MpOyQoRU5BQkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKTskKEVOQUJM
RV9ERVZJQ0VfT1JJRU5UQVRJT04pOyQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpOyQoRU5BQkxF
X0VOQ1JZUFRFRF9NRURJQSk7JChFTkFCTEVfRkVUQ0hfQVBJKTskKEVOQUJMRV9GSUxFX1NZU1RF
TSk7JChFTkFCTEVfRlVMTFNDUkVFTl9BUEkpOyQoRU5BQkxFX0dBTUVQQUQpOyQoRU5BQkxFX0dF
T0xPQ0FUSU9OKTskKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpOyQoRU5BQkxFX0lOREVYRURfREFU
QUJBU0UpOyQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpOyQoRU5BQkxFX0lOUFVUX1NQRUVDSCk7
JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKTskKEVOQUJMRV9JTlBVVF9UWVBFX0RBVEVUSU1FTE9D
QUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpOyQoRU5BQkxFX0lOUFVUX1RZUEVfVElNRSk7
JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKTskKEVOQUJMRV9MRUdBQ1lfRU5DUllQVEVEX01FRElB
KTskKEVOQUJMRV9MSU5LX1BSRVJFTkRFUik7JChFTkFCTEVfTUFUSE1MKTskKEVOQUJMRV9NSUNS
T0RBVEEpOyQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSk7JChFTkFCTEVfTk9USUZJQ0FUSU9O
Uyk7JChFTkFCTEVfU0NSSVBURURfU1BFRUNIKTskKEVOQUJMRV9TSEFSRURfV09SS0VSUyk7JChF
TkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKTskKEVOQUJMRV9NRURJQV9TT1VSQ0UpOyQoRU5B
QkxFX01FRElBX1NUQVRJU1RJQ1MpOyQoRU5BQkxFX1NRTF9EQVRBQkFTRSk7JChFTkFCTEVfU1RZ
TEVfU0NPUEVEKTskKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQpOyQoRU5BQkxFX1NWR19ET01fT0JK
Q19CSU5ESU5HUyk7JChFTkFCTEVfVklERU8pOyQoRU5BQkxFX1dFQl9BVURJTyk7JChFTkFCTEVf
V0VCR0wpOyQoRU5BQkxFX1dFQlhSKTskKEVOQUJMRV9YSFJfVElNRU9VVCk7JChFTkFCTEVfWFNM
VCk7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXByb2Nlc3NvckRlZmluaXRpb25zPgor
ICAgICAgPFByZXByb2Nlc3NvckRlZmluaXRpb25zPiQoRU5BQkxFXzNEX1RSQU5TRk9STVMpOyQo
RU5BQkxFX09WRVJGTE9XX1NDUk9MTElOR19UT1VDSCk7JChFTkFCTEVfQVRUQUNITUVOVF9FTEVN
RU5UKTskKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyk7JChFTkFCTEVfQ1NTM19DT05ESVRJT05B
TF9SVUxFUyk7JChFTkFCTEVfQ1NTX0lNQUdFX1NFVCk7JChFTkFCTEVfQ1NTM19URVhUKTskKEVO
QUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUspOyQoRU5BQkxFX0NTU19TSEFERVJTKTskKEVO
QUJMRV9DU1NfQ09NUE9TSVRJTkcpOyQoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVWRUw0KTskKEVO
QUJMRV9DU1NfU0hBUEVfSU5TSURFKTskKEVOQUJMRV9DU1NfVFJBTlNGT1JNU19BTklNQVRJT05T
X1RSQU5TSVRJT05TX1VOUFJFRklYRUQpOyQoRU5BQkxFX0NVUlNPUl9WSVNJQklMSVRZKTskKEVO
QUJMRV9DVVNUT01fU0NIRU1FX0hBTkRMRVIpOyQoRU5BQkxFX0RBUktfTU9ERV9DU1MpOyQoRU5B
QkxFX0RBVEFHUklEKTskKEVOQUJMRV9EQVRBTElTVF9FTEVNRU5UKTskKEVOQUJMRV9ERVZJQ0Vf
T1JJRU5UQVRJT04pOyQoRU5BQkxFX0RJUkVDVE9SWV9VUExPQUQpOyQoRU5BQkxFX0VOQ1JZUFRF
RF9NRURJQSk7JChFTkFCTEVfRkVUQ0hfQVBJKTskKEVOQUJMRV9GSUxFX1NZU1RFTSk7JChFTkFC
TEVfRlVMTFNDUkVFTl9BUEkpOyQoRU5BQkxFX0dBTUVQQUQpOyQoRU5BQkxFX0dFT0xPQ0FUSU9O
KTskKEVOQUJMRV9ISUdIX0RQSV9DQU5WQVMpOyQoRU5BQkxFX0lOUFVUX1RZUEVfQ09MT1IpOyQo
RU5BQkxFX0lOUFVUX1NQRUVDSCk7JChFTkFCTEVfSU5QVVRfVFlQRV9EQVRFKTskKEVOQUJMRV9J
TlBVVF9UWVBFX0RBVEVUSU1FTE9DQUwpOyQoRU5BQkxFX0lOUFVUX1RZUEVfTU9OVEgpOyQoRU5B
QkxFX0lOUFVUX1RZUEVfVElNRSk7JChFTkFCTEVfSU5QVVRfVFlQRV9XRUVLKTskKEVOQUJMRV9M
RUdBQ1lfRU5DUllQVEVEX01FRElBKTskKEVOQUJMRV9MSU5LX1BSRVJFTkRFUik7JChFTkFCTEVf
TUFUSE1MKTskKEVOQUJMRV9NSUNST0RBVEEpOyQoRU5BQkxFX01PVVNFX0NVUlNPUl9TQ0FMRSk7
JChFTkFCTEVfTk9USUZJQ0FUSU9OUyk7JChFTkFCTEVfU0NSSVBURURfU1BFRUNIKTskKEVOQUJM
RV9TSEFSRURfV09SS0VSUyk7JChFTkFCTEVfTUVESUFfQ09OVFJPTFNfU0NSSVBUKTskKEVOQUJM
RV9NRURJQV9TT1VSQ0UpOyQoRU5BQkxFX01FRElBX1NUQVRJU1RJQ1MpOyQoRU5BQkxFX1NRTF9E
QVRBQkFTRSk7JChFTkFCTEVfU1RZTEVfU0NPUEVEKTskKEVOQUJMRV9TVUJQSVhFTF9MQVlPVVQp
OyQoRU5BQkxFX1NWR19ET01fT0JKQ19CSU5ESU5HUyk7JChFTkFCTEVfVklERU8pOyQoRU5BQkxF
X1dFQl9BVURJTyk7JChFTkFCTEVfV0VCR0wpOyQoRU5BQkxFX1dFQlhSKTskKEVOQUJMRV9YSFJf
VElNRU9VVCk7JChFTkFCTEVfWFNMVCk7JShQcmVwcm9jZXNzb3JEZWZpbml0aW9ucyk8L1ByZXBy
b2Nlc3NvckRlZmluaXRpb25zPgogICAgIDwvQ2xDb21waWxlPgogICA8L0l0ZW1EZWZpbml0aW9u
R3JvdXA+CiAgIDxJdGVtR3JvdXA+CkBAIC0xODIsMTAgKzE4MSw2IEBACiAgICAgICA8VmFsdWU+
JChFTkFCTEVfSElHSF9EUElfQ0FOVkFTKTwvVmFsdWU+CiAgICAgICA8RW52aXJvbm1lbnRWYXJp
YWJsZT50cnVlPC9FbnZpcm9ubWVudFZhcmlhYmxlPgogICAgIDwvQnVpbGRNYWNybz4KLSAgICA8
QnVpbGRNYWNybyBJbmNsdWRlPSJFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSI+Ci0gICAgICA8VmFs
dWU+JChFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSk8L1ZhbHVlPgotICAgICAgPEVudmlyb25tZW50
VmFyaWFibGU+dHJ1ZTwvRW52aXJvbm1lbnRWYXJpYWJsZT4KLSAgICA8L0J1aWxkTWFjcm8+CiAg
ICAgPEJ1aWxkTWFjcm8gSW5jbHVkZT0iRU5BQkxFX0lOUFVUX1NQRUVDSCI+CiAgICAgICA8VmFs
dWU+JChFTkFCTEVfSU5QVVRfU1BFRUNIKTwvVmFsdWU+CiAgICAgICA8RW52aXJvbm1lbnRWYXJp
YWJsZT50cnVlPC9FbnZpcm9ubWVudFZhcmlhYmxlPgpJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjc1MTIzKQorKysgVG9vbHMv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMjEtMDMtMjYgIFNh
bSBXZWluaWcgIDx3ZWluaWdAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5E
RVhFRF9EQVRBQkFTRSAmIEVOQUJMRV9JTkRFWEVEX0RBVEFCQVNFX0lOX1dPUktFUlMsIGl0IHNl
ZW1zIGxpa2UgaXQgaXMgb24gZm9yIGFsbCBwb3J0cworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjIzODEwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHBlcmwvRmVhdHVyZUxpc3Qu
cG06CisgICAgICAgIFJlbW92ZSBFTkFCTEVfSU5ERVhFRF9EQVRBQkFTRSAmIEVOQUJMRV9JTkRF
WEVEX0RBVEFCQVNFX0lOX1dPUktFUlMgZnJvbSBGZWF0dXJlTGlzdC5wbS4KKwogMjAyMS0wMy0y
NiAgVHlsZXIgV2lsY29jayAgPHR3aWxjby5vQHByb3Rvbm1haWwuY29tPgogCiAgICAgICAgIEZp
eCBUeXBlRXJyb3I6IENhbid0IG1peCBzdHJpbmdzIGFuZCBieXRlcyBpbiBwYXRoIGNvbXBvbmVu
dHMgaW4gVG9vbHMvU2NyaXB0cy9kdW1wLWNsYXNzLWxheW91dApJbmRleDogVG9vbHMvU2NyaXB0
cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1NjcmlwdHMv
d2Via2l0cGVybC9GZWF0dXJlTGlzdC5wbQkocmV2aXNpb24gMjc1MTIzKQorKysgVG9vbHMvU2Ny
aXB0cy93ZWJraXRwZXJsL0ZlYXR1cmVMaXN0LnBtCSh3b3JraW5nIGNvcHkpCkBAIC05NSw4ICs5
NSw2IEBAIG15ICgKICAgICAkZ2VvbG9jYXRpb25TdXBwb3J0LAogICAgICRncHVQcm9jZXNzU3Vw
cG9ydCwKICAgICAkZ3N0cmVhbWVyR0xTdXBwb3J0LAotICAgICRpbmRleGVkRGF0YWJhc2VJbldv
cmtlcnNTdXBwb3J0LAotICAgICRpbmRleGVkRGF0YWJhc2VTdXBwb3J0LAogICAgICRpbnB1dFR5
cGVDb2xvclN1cHBvcnQsCiAgICAgJGlucHV0VHlwZURhdGVTdXBwb3J0LAogICAgICRpbnB1dFR5
cGVEYXRldGltZWxvY2FsU3VwcG9ydCwKQEAgLTMyNywxMiArMzI1LDYgQEAgbXkgQGZlYXR1cmVz
ID0gKAogICAgIHsgb3B0aW9uID0+ICJncHUtcHJvY2VzcyIsIGRlc2MgPT4gIlRvZ2dsZSBHUFUg
UHJvY2VzcyBzdXBwb3J0IiwKICAgICAgIGRlZmluZSA9PiAiRU5BQkxFX0dQVV9QUk9DRVNTIiwg
dmFsdWUgPT4gXCRncHVQcm9jZXNzU3VwcG9ydCB9LAogCi0gICAgeyBvcHRpb24gPT4gImluZGV4
ZWQtZGF0YWJhc2UiLCBkZXNjID0+ICJUb2dnbGUgSW5kZXhlZCBEYXRhYmFzZSBzdXBwb3J0IiwK
LSAgICAgIGRlZmluZSA9PiAiRU5BQkxFX0lOREVYRURfREFUQUJBU0UiLCB2YWx1ZSA9PiBcJGlu
ZGV4ZWREYXRhYmFzZVN1cHBvcnQgfSwKLQotICAgIHsgb3B0aW9uID0+ICJpbmRleGVkLWRhdGFi
YXNlLWluLXdvcmtlcnMiLCBkZXNjID0+ICJUb2dnbGUgc3VwcG9ydCBmb3IgSW5kZXhlZCBEYXRh
YmFzZSBpbiB3b3JrZXJzIiwKLSAgICAgIGRlZmluZSA9PiAiRU5BQkxFX0lOREVYRURfREFUQUJB
U0VfSU5fV09SS0VSUyIsIHZhbHVlID0+IFwkaW5kZXhlZERhdGFiYXNlSW5Xb3JrZXJzU3VwcG9y
dCB9LAotCiAgICAgeyBvcHRpb24gPT4gImlucHV0LXR5cGUtY29sb3IiLCBkZXNjID0+ICJUb2dn
bGUgSW5wdXQgVHlwZSBDb2xvciBzdXBwb3J0IiwKICAgICAgIGRlZmluZSA9PiAiRU5BQkxFX0lO
UFVUX1RZUEVfQ09MT1IiLCB2YWx1ZSA9PiBcJGlucHV0VHlwZUNvbG9yU3VwcG9ydCB9LAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>