<?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>141176</bug_id>
          
          <creation_ts>2015-02-02 14:55:47 -0800</creation_ts>
          <short_desc>[WK2] Drop legacy WKBundlePageDiagnosticLoggingClient API</short_desc>
          <delta_ts>2015-02-28 10:42:24 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=142129</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>142131</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>jer.noble</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1066248</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-02-02 14:55:47 -0800</bug_when>
    <thetext>Drop legacy WKBundlePageDiagnosticLoggingClient WK2 API as we are now exposing this functionality via WKPageDiagnosticLoggingClient.h on UIProcess side. The client-side has already been ported over.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1071477</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-02-23 18:48:46 -0800</bug_when>
    <thetext>We should be able to drop this now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072743</commentid>
    <comment_count>2</comment_count>
      <attachid>247524</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-02-27 11:07:58 -0800</bug_when>
    <thetext>Created attachment 247524
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072764</commentid>
    <comment_count>3</comment_count>
      <attachid>247529</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-02-27 11:46:44 -0800</bug_when>
    <thetext>Created attachment 247529
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072936</commentid>
    <comment_count>4</comment_count>
      <attachid>247529</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-27 17:43:44 -0800</bug_when>
    <thetext>Comment on attachment 247529
Patch

Clearing flags on attachment: 247529

Committed r180804: &lt;http://trac.webkit.org/changeset/180804&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072937</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-27 17:43:51 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072957</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2015-02-27 19:06:10 -0800</bug_when>
    <thetext>Did this break two TestWebKitAPI tests?

Build: &lt;https://build.webkit.org/builders/Apple%20Yosemite%20Release%20WK1%20(Tests)/builds/3211&gt;

Test: &lt;https://build.webkit.org/builders/Apple%20Yosemite%20Release%20WK1%20(Tests)/builds/3211/steps/run-api-tests/logs/stdio&gt;

TIMEOUT _WKDownload.DownloadRequest
TIMEOUT _WKDownload.OriginatingWebView</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072964</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-02-27 19:31:43 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Did this break two TestWebKitAPI tests?
&gt; 
&gt; Build:
&gt; &lt;https://build.webkit.org/builders/
&gt; Apple%20Yosemite%20Release%20WK1%20(Tests)/builds/3211&gt;
&gt; 
&gt; Test:
&gt; &lt;https://build.webkit.org/builders/
&gt; Apple%20Yosemite%20Release%20WK1%20(Tests)/builds/3211/steps/run-api-tests/
&gt; logs/stdio&gt;
&gt; 
&gt; TIMEOUT _WKDownload.DownloadRequest
&gt; TIMEOUT _WKDownload.OriginatingWebView

Seems unlikely. Also, it started failing after ryosuke&apos;s bmalloc changes, not mine, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1072968</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-02-27 19:45:05 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; Did this break two TestWebKitAPI tests?
&gt; &gt; 
&gt; &gt; Build:
&gt; &gt; &lt;https://build.webkit.org/builders/
&gt; &gt; Apple%20Yosemite%20Release%20WK1%20(Tests)/builds/3211&gt;
&gt; &gt; 
&gt; &gt; Test:
&gt; &gt; &lt;https://build.webkit.org/builders/
&gt; &gt; Apple%20Yosemite%20Release%20WK1%20(Tests)/builds/3211/steps/run-api-tests/
&gt; &gt; logs/stdio&gt;
&gt; &gt; 
&gt; &gt; TIMEOUT _WKDownload.DownloadRequest
&gt; &gt; TIMEOUT _WKDownload.OriginatingWebView
&gt; 
&gt; Seems unlikely. Also, it started failing after ryosuke&apos;s bmalloc changes,
&gt; not mine, right?

The build right after is good:
https://build.webkit.org/builders/Apple%20Yosemite%20Release%20WK1%20%28Tests%29/builds/3212

I guess this was a flake.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073037</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-02-28 10:33:23 -0800</bug_when>
    <thetext>This broke nightly builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1073039</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-02-28 10:42:24 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 142131</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247524</attachid>
            <date>2015-02-27 11:07:58 -0800</date>
            <delta_ts>2015-02-27 11:46:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141176-20150227110743.patch</filename>
            <type>text/plain</type>
            <size>46575</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNzU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZmVmZmJjMTAxMmZkMjEy
ZDc1YTU3Yjc2Nzg2YTIwZTBiMzAzODZlOC4uNDU0Njc0NGE1YmY2Yjc2YjAyNTdhM2JmZTAwYWNj
OGNiZTMwYmZkZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDE1LTAyLTAyICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW1dLMl0gRHJvcCBsZWdhY3kg
V0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDExNzYKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEcm9wIGxlZ2FjeSBXS0J1bmRsZVBhZ2VE
aWFnbm9zdGljTG9nZ2luZ0NsaWVudCBXSzIgQVBJIGFzIHdlIGFyZSBub3cKKyAgICAgICAgZXhw
b3NpbmcgdGhpcyBmdW5jdGlvbmFsaXR5IHZpYSBXS1BhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dC5oIG9uCisgICAgICAgIFVJUHJvY2VzcyBzaWRlLiBUaGUgY2xpZW50LXNpZGUgaGFzIGFscmVh
ZHkgYmVlbiBwb3J0ZWQgb3Zlci4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAg
ICAqIFNoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3QuaDoKKyAgICAgICAgKFdlYktpdDo6dG9B
UEkpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0Ojp0b0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0
VHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oOgor
ICAgICAgICAoV2ViS2l0Ojp0b0FQSSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9jL1dLRGlh
Z25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQVBJL2MvV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaC4KKyAgICAgICAgKiBX
ZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwOgorICAgICAgICAoV0tCdW5kbGVQ
YWdlU2V0RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQpOiBEZWxldGVkLgorICAgICAgICAqIFdlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudC5oOiBSZW1vdmVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
SW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwOiBSZW1vdmVkLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlRGlh
Z25vc3RpY0xvZ2dpbmdDbGllbnQuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OmxvZ0RpYWdub3N0aWNNZXNzYWdlKToK
KyAgICAgICAgKFdlYktpdDo6V2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OmxvZ0RpYWdub3N0
aWNNZXNzYWdlV2l0aFJlc3VsdCk6CisgICAgICAgIChXZWJLaXQ6OldlYkRpYWdub3N0aWNMb2dn
aW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZSk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpX
ZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2xvc2UpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjppbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6aW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudCk6IERlbGV0ZWQuCisKIDIwMTUtMDItMjYgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVy
c2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgQVBJIHRvIHJlbW92ZSBhbGwgd2Vic2l0ZSBk
YXRhIGZvciB0aGUgZ2l2ZW4gZGF0YSByZWNvcmRzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0CmluZGV4IGNj
Yjc0NzA1N2M1Y2MwMjRmNzUyNjMwY2IwYzA5YjBkOGY4ZGY3Y2EuLjY4MTQ5MDU2NmVjZmM2ZWQx
NWM4ZDU3NzMxMmUzNTVhNDljOGZjMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NNYWtl
TGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0CkBAIC01MTAsNyAr
NTEwLDYgQEAgc2V0KFdlYktpdDJfU09VUkNFUwogICAgIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UmVzdWx0LmNwcAogICAgIFdlYlByb2Nlc3MvSW5qZWN0
ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAogICAgIFdlYlByb2Nl
c3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlQ29udGV4dE1lbnVDbGllbnQuY3Bw
Ci0gICAgV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudC5jcHAKICAgICBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVj
dGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAKICAgICBXZWJQcm9jZXNzL0luamVjdGVkQnVu
ZGxlL0luamVjdGVkQnVuZGxlUGFnZUZvcm1DbGllbnQuY3BwCiAgICAgV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHRUeXBlLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tEaWFnbm9zdGljTG9nZ2lu
Z1Jlc3VsdFR5cGUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNTgxYzc0Zjk2MTU3
NTM2ZWNlMTVhODc0OWQ1NThjMDNjZjY1YmI4Yi4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tEaWFnbm9z
dGljTG9nZ2luZ1Jlc3VsdFR5cGUuaAorKysgL2Rldi9udWxsCkBAIC0xLDQ1ICswLDAgQEAKLS8q
Ci0gKiBDb3B5cmlnaHQgKEMpIDIwMTMsIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlX2gK
LSNkZWZpbmUgV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGVfaAotCi0jaWZkZWYgX19jcGx1
c3BsdXMKLWV4dGVybiAiQyIgewotI2VuZGlmCi0KLWVudW0gewotICAgIGtXS0RpYWdub3N0aWNM
b2dnaW5nUmVzdWx0UGFzcyA9IDAsCi0gICAga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWls
ID0gMSwKLSAgICBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdE5vb3AgPSAyLAotfTsKLXR5cGVk
ZWYgdWludDMyX3QgV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGU7Ci0KLSNpZmRlZiBfX2Nw
bHVzcGx1cwotfQotI2VuZGlmCi0KLSNlbmRpZiAvKiBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0
VHlwZV9oICovCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1No
YXJlZEFQSUNhc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNh
c3QuaAppbmRleCA5NDBkNzI2NTMyYzg5NjBmNGUxNDU3NzE1N2M1NzBjYTM0MjBmZDI4Li5mMmQ1
MmY3MGIwY2ZkZjg1NWU0YzcwN2U1MTQyMDNiYzk1ZDE1NWY0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKKysrIGIvU291cmNlL1dlYktp
dDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCkBAIC0zOCw3ICszOCw2IEBACiAjaW5j
bHVkZSAiU2FtZURvY3VtZW50TmF2aWdhdGlvblR5cGUuaCIKICNpbmNsdWRlICJXS0Jhc2UuaCIK
ICNpbmNsdWRlICJXS0NvbnRleHRNZW51SXRlbVR5cGVzLmgiCi0jaW5jbHVkZSAiV0tEaWFnbm9z
dGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCIKICNpbmNsdWRlICJXS0V2ZW50LmgiCiAjaW5jbHVkZSAi
V0tGaW5kT3B0aW9ucy5oIgogI2luY2x1ZGUgIldLR2VvbWV0cnkuaCIKQEAgLTUxLDcgKzUwLDYg
QEAKICNpbmNsdWRlICJXZWJFdmVudC5oIgogI2luY2x1ZGUgIldlYkZpbmRPcHRpb25zLmgiCiAj
aW5jbHVkZSA8V2ViQ29yZS9Db250ZXh0TWVudUl0ZW0uaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0Rp
YWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvRmxvYXRSZWN0
Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZUxvYWRlclR5cGVzLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9JbnRSZWN0Lmg+CkBAIC04MTUsNDQgKzgxMyw2IEBAIGlubGluZSBTYW1lRG9jdW1lbnRO
YXZpZ2F0aW9uVHlwZSB0b1NhbWVEb2N1bWVudE5hdmlnYXRpb25UeXBlKFdLU2FtZURvY3VtZW50
TmF2CiAgICAgcmV0dXJuIHR5cGU7CiB9CiAKLWlubGluZSBXS0RpYWdub3N0aWNMb2dnaW5nUmVz
dWx0VHlwZSB0b0FQSShXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUgdHlwZSkK
LXsKLSAgICBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZSB3a1R5cGU7Ci0KLSAgICBzd2l0
Y2ggKHR5cGUpIHsKLSAgICBjYXNlIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0UGFz
czoKLSAgICAgICAgd2tUeXBlID0ga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRQYXNzOwotICAg
ICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0RmFp
bDoKLSAgICAgICAgd2tUeXBlID0ga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWlsOwotICAg
ICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9v
cDoKLSAgICAgICAgd2tUeXBlID0ga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHROb29wOwotICAg
ICAgICBicmVhazsKLSAgICB9Ci0KLSAgICByZXR1cm4gd2tUeXBlOwotfQotCi1pbmxpbmUgV2Vi
Q29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHRvRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHRUeXBlKFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHdrVHlwZSkKLXsKLSAgICBXZWJD
b3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUgdHlwZTsKLQotICAgIHN3aXRjaCAod2tU
eXBlKSB7Ci0gICAgY2FzZSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFBhc3M6Ci0gICAgICAg
IHR5cGUgPSBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFBhc3M7Ci0gICAgICAgIGJy
ZWFrOwotICAgIGNhc2Uga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWlsOgotICAgICAgICB0
eXBlID0gV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWlsOwotICAgICAgICBicmVh
azsKLSAgICBjYXNlIGtXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9vcDoKLSAgICAgICAgdHlw
ZSA9IFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9vcDsKLSAgICAgICAgYnJlYWs7
Ci0gICAgfQotCi0gICAgcmV0dXJuIHR5cGU7Ci19Ci0KIGlubGluZSBXS0xheW91dE1pbGVzdG9u
ZXMgdG9XS0xheW91dE1pbGVzdG9uZXMoV2ViQ29yZTo6TGF5b3V0TWlsZXN0b25lcyBtaWxlc3Rv
bmVzKQogewogICAgIHVuc2lnbmVkIHdrTWlsZXN0b25lcyA9IDA7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmggYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgKaW5kZXggZGM0N2ZiZTNlMzcwNDkzZDc2YjRjYjI4
ZDRkYzIwOTljOTA5ZTNhYy4uYzRkOGQ4ZDE5M2E4OGYwMTFmMGQ0YzQ4Y2JkNDk3NDA0YTMxZTAz
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0FQSUNhc3QuaApAQCAtMzgs
NiArMzgsNyBAQAogI2luY2x1ZGUgIldLQ29udGV4dC5oIgogI2luY2x1ZGUgIldLQ29va2llTWFu
YWdlci5oIgogI2luY2x1ZGUgIldLQ3JlZGVudGlhbFR5cGVzLmgiCisjaW5jbHVkZSAiV0tEaWFn
bm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCIKICNpbmNsdWRlICJXS1BhZ2UuaCIKICNpbmNsdWRl
ICJXS1ByZWZlcmVuY2VzUmVmLmgiCiAjaW5jbHVkZSAiV0tQcmVmZXJlbmNlc1JlZlByaXZhdGUu
aCIKQEAgLTQ2LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJXS1NoYXJlZEFQSUNhc3QuaCIKICNpbmNs
dWRlICJXZWJHcmFtbWFyRGV0YWlsLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9DcmVkZW50aWFsLmg+
CisjaW5jbHVkZSA8V2ViQ29yZS9EaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaD4KICNpbmNs
dWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyVHlwZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1Byb3Rl
Y3Rpb25TcGFjZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2V0dGluZ3MuaD4KQEAgLTUyNSw2ICs1
MjcsMjUgQEAgaW5saW5lIFdLV2ViR0xMb2FkUG9saWN5IHRvQVBJKFdlYkNvcmU6OldlYkdMTG9h
ZFBvbGljeSB3ZWJHTExvYWRQb2xpY3kpCiAgICAgcmV0dXJuIGtXS1dlYkdMTG9hZFBvbGljeUxv
YWROb3JtYWxseTsKIH0KIAoraW5saW5lIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHRv
QVBJKFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZSB0eXBlKQoreworICAgIFdL
RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHdrVHlwZTsKKworICAgIHN3aXRjaCAodHlwZSkg
eworICAgIGNhc2UgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRQYXNzOgorICAgICAg
ICB3a1R5cGUgPSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFBhc3M7CisgICAgICAgIGJyZWFr
OworICAgIGNhc2UgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWlsOgorICAgICAg
ICB3a1R5cGUgPSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdEZhaWw7CisgICAgICAgIGJyZWFr
OworICAgIGNhc2UgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHROb29wOgorICAgICAg
ICB3a1R5cGUgPSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdE5vb3A7CisgICAgICAgIGJyZWFr
OworICAgIH0KKworICAgIHJldHVybiB3a1R5cGU7Cit9CisKIGlubGluZSBQcm94eWluZ1JlZlB0
cjxXZWJHcmFtbWFyRGV0YWlsPiB0b0FQSShjb25zdCBXZWJDb3JlOjpHcmFtbWFyRGV0YWlsJiBn
cmFtbWFyRGV0YWlsKQogewogICAgIHJldHVybiBQcm94eWluZ1JlZlB0cjxXZWJHcmFtbWFyRGV0
YWlsPihXZWJHcmFtbWFyRGV0YWlsOjpjcmVhdGUoZ3JhbW1hckRldGFpbCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9jL1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHRUeXBlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2MvV0tEaWFnbm9zdGljTG9n
Z2luZ1Jlc3VsdFR5cGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ODFjNzRmOTYxNTc1MzZlY2UxNWE4NzQ5ZDU1
OGMwM2NmNjViYjhiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9jL1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmgKQEAgLTAsMCArMSw0NSBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMywgMjAxNSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFy
eSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQg
cHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAx
LiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAq
ICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRo
ZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBM
RSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAq
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGVf
aAorI2RlZmluZSBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZV9oCisKKyNpZmRlZiBfX2Nw
bHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKworZW51bSB7CisgICAga1dLRGlhZ25vc3Rp
Y0xvZ2dpbmdSZXN1bHRQYXNzID0gMCwKKyAgICBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdEZh
aWwgPSAxLAorICAgIGtXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9vcCA9IDIsCit9OwordHlw
ZWRlZiB1aW50MzJfdCBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZTsKKworI2lmZGVmIF9f
Y3BsdXNwbHVzCit9CisjZW5kaWYKKworI2VuZGlmIC8qIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHRUeXBlX2ggKi8KKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IGUxMGM2MWYzYjRjY2VmY2M4YzQwMmU4ZGI3OWQ0Njc4ODRhMjEx
N2MuLjk0MGJlNmJmZmFkNjQ1ODA0MmEzZjRlYTZkYzE0OGYyNGQ5NTk0OTkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9T
b3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTM5NCw3
ICszOTQsNiBAQAogCQkxQUI0NzRFMjE4NEQ0NDgwMDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlRm9y
bUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MUFCNDc0RTExODRENDQ4MDAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZUZvcm1DbGllbnQuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkxQUI0NzRFNDE4
NEQ0NDk4MDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlQ29udGV4dE1lbnVDbGllbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjQ3NEUzMTg0RDQ0OTgw
MDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFBQjQ3NEU2MTg0RDQ0QjQwMDUx
QjYyMiAvKiBXS0J1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI0NzRFNTE4NEQ0NEI0MDA1MUI2MjIgLyog
V0tCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVT
ID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTFBQjQ3NEU4MTg0RDQ0RDAwMDUxQjYyMiAvKiBXS0J1
bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCNDc0RTcxODRENDREMDAwNTFCNjIyIC8qIFdLQnVu
ZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVU
RVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUFCNDc0RUExODRENDUxMzAwNTFCNjIyIC8qIFdL
QnVuZGxlUGFnZVBvbGljeUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUFCNDc0RTkxODRENDUxMzAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZVBv
bGljeUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCTFBQjdENENBMTI4OEFBQTcwMENGRDA4QyAvKiBEb3dubG9hZFByb3h5LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI3RDRDODEyODhBQUE3
MDBDRkQwOEMgLyogRG93bmxvYWRQcm94eS5oICovOyB9OwogCQkxQUI3RDRDQjEyODhBQUE3MDBD
RkQwOEMgLyogRG93bmxvYWRQcm94eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQUI3RDRDOTEyODhBQUE3MDBDRkQwOEMgLyogRG93bmxvYWRQcm94
eS5jcHAgKi87IH07CkBAIC04MzYsNiArODM1LDcgQEAKIAkJM0Y4ODlEMTQxODg3NzhDOTAwRkVB
REFGIC8qIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGODg5RDEyMTg4Nzc4QzkwMEZFQURBRiAv
KiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0gKi87IH07CiAJCTNGODg5RDE1MTg4
Nzc4QzkwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGODg5RDEzMTg4Nzc4Qzkw
MEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCAqLzsgfTsKIAkJM0Y4
ODlEMTcxODg3ODU5MzAwRkVBREFGIC8qIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXIubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzRjg4OUQwRDE4ODc2
OTlDMDBGRUFEQUYgLyogV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbSAqLzsgfTsKKwkJNDZD
NkQxQzExQTgwMzY4NDAwNEFDRjk4IC8qIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0NkM2RDFDMDFB
ODAzNjg0MDA0QUNGOTggLyogV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0QTNDQzE4QTE5QjA2
M0U3MDBEMTRBRUYgLyogVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEE0MTBGMzkx
OUFGN0IwNDAwMkVCQUI1IC8qIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5
LmNwcCAqLzsgfTsKIAkJNEEzQ0MxOEIxOUIwNjQwRjAwRDE0QUVGIC8qIFVzZXJNZWRpYVBlcm1p
c3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0QTQxMEYzQTE5QUY3QjA0MDAyRUJBQjUgLyogVXNlck1lZGlhUGVy
bWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuaCAqLzsgfTsKIAkJNEEzQ0MxOEMxOUIwNjQxNTAw
RDE0QUVGIC8qIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEE0MTBGM0IxOUFGN0IwNDAwMkVC
QUI1IC8qIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwICovOyB9OwpAQCAtMTE2
Myw3ICsxMTYzLDYgQEAKIAkJODM3MkRCMjUxQTY3NEM4RjAwQzY5N0M1IC8qIFdLUGFnZURpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4MzcyREIyNDFBNjc0QzhGMDBDNjk3QzUgLyogV0tQYWdlRGlhZ25vc3RpY0xv
Z2dpbmdDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk4MzcyREIyODFBNjc1NjI4MDBDNjk3QzUgLyogV2ViUGFnZURpYWdub3N0aWNMb2dn
aW5nQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDgzNzJEQjI2MUE2NzU2MjgwMEM2OTdDNSAvKiBXZWJQYWdlRGlhZ25vc3RpY0xvZ2dpbmdD
bGllbnQuY3BwICovOyB9OwogCQk4MzcyREIyOTFBNjc1NjI4MDBDNjk3QzUgLyogV2ViUGFnZURp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA4MzcyREIyNzFBNjc1NjI4MDBDNjk3QzUgLyogV2ViUGFnZURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50LmggKi87IH07Ci0JCTgzNzJEQjJGMUE2NzdENEEwMEM2OTdDNSAvKiBX
S0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gODM3MkRCMkUxQTY3N0Q0QTAwQzY5N0M1IC8qIFdLRGlhZ25v
c3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJODM4OTFCNjMxQTY4QjM0MjAwMzBGMzg2IC8qIEFQSURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4Mzg5MUI2MjFBNjhCMzQyMDAzMEYzODYgLyogQVBJRGlhZ25vc3RpY0xvZ2dpbmdD
bGllbnQuaCAqLzsgfTsKIAkJODM4OTFCNjkxQTY4QkVCQzAwMzBGMzg2IC8qIF9XS0RpYWdub3N0
aWNMb2dnaW5nRGVsZWdhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDgzODkxQjY4MUE2OEJFQkMwMDMwRjM4NiAvKiBfV0tEaWFnbm9zdGljTG9nZ2lu
Z0RlbGVnYXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsg
fTsKIAkJODM4OTFCNkMxQTY4QzMwQjAwMzBGMzg2IC8qIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzg5MUI2
QTFBNjhDMzBCMDAzMEYzODYgLyogRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaCAqLzsgfTsKQEAg
LTE2NjYsNyArMTY2NSw2IEBACiAJCUNEMTlBMjZFMUExM0U4MzQwMDhENjUwRSAvKiBXZWJEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQ0QxOUEyNkExQTEzRTgyMTAwOEQ2NTBFIC8qIFdlYkRpYWdub3N0aWNMb2dn
aW5nQ2xpZW50LmggKi87IH07CiAJCUNENUM2NkEwMTM0QjlEMzgwMDRGRTJBOCAvKiBJbmplY3Rl
ZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENUM2NjlFMTM0QjlEMzYwMDRGRTJBOCAvKiBJbmplY3Rl
ZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmNwcCAqLzsgfTsKIAkJQ0Q1QzY2QTExMzRCOUQz
ODAwNEZFMkE4IC8qIEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENUM2NjlGMTM0QjlEMzcw
MDRGRTJBOCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggKi87IH07Ci0J
CUNENjdEMzBFMTVDMDhGOUEwMDg0M0FERiAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGlj
TG9nZ2luZ0NsaWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBDRDY3RDMwODE1QzA3QkUwMDA4NDNBREYgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRGlh
Z25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwICovOyB9OwogCQlDRDZGNzVGNDEzMUI2NkQwMDBENkIy
MUUgLyogV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDczQkEzRTEzMUEyRThBMDBFRURFRDIgLyogV2Vi
RnVsbFNjcmVlbk1hbmFnZXJQcm94eS5jcHAgKi87IH07CiAJCUNENzNCQTQ3MTMxQUNDOUEwMEVF
REVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENzNCQTQ1MTMxQUND
ODgwMEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZVJlY2VpdmVyLmNw
cCAqLzsgfTsKIAkJQ0Q3M0JBNEUxMzFBQ0RCNzAwRUVERUQyIC8qIFdlYkZ1bGxTY3JlZW5NYW5h
Z2VyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IENENzNCQTQ4MTMxQUNEOEUwMEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFu
YWdlck1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CkBAIC0yNDk4LDcgKzI0OTYsNiBAQAogCQkx
QUI0NzRFMTE4NEQ0NDgwMDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlRm9ybUNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZVBhZ2VGb3JtQ2xpZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjQ3NEUzMTg0RDQ0OTgwMDUxQjYyMiAvKiBX
S0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkxQUI0NzRFNTE4NEQ0NEI0MDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlRnVs
bFNjcmVlbkNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRs
ZVBhZ2VGdWxsU2NyZWVuQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTFB
QjQ3NEU3MTg0RDQ0RDAwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZVBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI0
NzRFOTE4NEQ0NTEzMDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlUG9saWN5Q2xpZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlUGFnZVBvbGljeUNsaWVudC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI3RDRDODEyODhBQUE3MDBDRkQwOEMgLyog
RG93bmxvYWRQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBEb3dubG9h
ZFByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjdENEM5MTI4OEFBQTcw
MENGRDA4QyAvKiBEb3dubG9hZFByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IERvd25sb2FkUHJveHkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMjk4MSw2ICsyOTc4LDcgQEAKIAkJM0Y4ODlEMTIxODg3NzhDOTAwRkVBREFGIC8qIFdlYlZp
ZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgbmFtZSA9IFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbTsgcGF0aCA9IGlv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTNGODg5RDEzMTg4Nzc4QzkwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5N
YW5hZ2VyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gV2ViVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg7IHBhdGggPSBpb3MvV2ViVmlkZW9GdWxsc2NyZWVuTWFu
YWdlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTNGODg5RDE2MTg4NzdB
MjQwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubWVzc2FnZXMuaW4g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBu
YW1lID0gV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1lc3NhZ2VzLmluOyBwYXRoID0g
aW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tZXNzYWdlcy5pbjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZDNkQxQzAxQTgwMzY4NDAwNEFDRjk4IC8qIFdLRGlhZ25v
c3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTRBNDEwRjM1MTlBRjdBQzMwMDJFQkFCNSAvKiBXS1VzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdLVXNlck1l
ZGlhUGVybWlzc2lvblJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0
QTQxMEYzNjE5QUY3QUMzMDAyRUJBQjUgLyogV0tVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdC5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS1VzZXJNZWRpYVBlcm1pc3Npb25S
ZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRBNDEwRjM5MTlBRjdCMDQw
MDJFQkFCNSAvKiBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVkaWFQZXJtaXNzaW9uUmVx
dWVzdE1hbmFnZXJQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0zMzQ3
LDcgKzMzNDUsNiBAQAogCQk4MzcyREIyNDFBNjc0QzhGMDBDNjk3QzUgLyogV0tQYWdlRGlhZ25v
c3RpY0xvZ2dpbmdDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tQ
YWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJODM3MkRCMjYxQTY3NTYyODAwQzY5N0M1IC8qIFdlYlBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBXZWJQYWdlRGlh
Z25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4
MzcyREIyNzFBNjc1NjI4MDBDNjk3QzUgLyogV2ViUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlBhZ2VEaWFnbm9zdGljTG9n
Z2luZ0NsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk4MzcyREIyRTFBNjc3
RDRBMDBDNjk3QzUgLyogV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM4OTFCNjIxQTY4QjM0MjAwMzBGMzg2IC8q
IEFQSURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEFQSURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTgzODkxQjY4MUE2OEJFQkMwMDMwRjM4NiAvKiBfV0tEaWFnbm9zdGljTG9nZ2lu
Z0RlbGVnYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS0RpYWdub3N0
aWNMb2dnaW5nRGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM4OTFC
NkExQTY4QzMwQjAwMzBGMzg2IC8qIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0zODgyLDggKzM4NzksNiBAQAogCQlDRDE5QTI2QTFB
MTNFODIxMDA4RDY1MEUgLyogV2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q1QzY2OUUxMzRCOUQzNjAwNEZFMkE4IC8qIElu
amVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNENUM2NjlGMTM0QjlEMzcwMDRGRTJBOCAv
KiBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQ0Q2N0QzMDgxNUMwN0JFMDAwODQzQURGIC8qIElu
amVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dn
aW5nQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQ0Q2N0QzMDkxNUMw
N0JFMDAwODQzQURGIC8qIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZURp
YWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNE
NzNCQTM3MTMxQTI5RkUwMEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdlci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBXZWJGdWxsU2NyZWVuTWFuYWdlci5jcHA7
IHBhdGggPSBGdWxsU2NyZWVuL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q3M0JBMzgxMzFBMjlGRTAwRUVERUQyIC8qIFdlYkZ1bGxTY3Jl
ZW5NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFdlYkZ1bGxTY3Jl
ZW5NYW5hZ2VyLmg7IHBhdGggPSBGdWxsU2NyZWVuL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNENzNCQTM5MTMxQTI5RkUwMEVFREVEMiAvKiBX
ZWJGdWxsU2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBX
ZWJGdWxsU2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbjsgcGF0aCA9IEZ1bGxTY3JlZW4vV2ViRnVs
bFNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC02Mjc5LDYgKzYyNzQsNyBAQAogCQkJCTUxOEFDRjEwMTJCMDE1RjgwMEIwNEI4MyAvKiBXS0Ny
ZWRlbnRpYWxUeXBlcy5oICovLAogCQkJCUY2MkE3NjVGMTJCMUFCRUQwMDA1RjFCNiAvKiBXS0Rh
dGFiYXNlTWFuYWdlci5jcHAgKi8sCiAJCQkJRjYyQTc2NjAxMkIxQUJFRDAwMDVGMUI2IC8qIFdL
RGF0YWJhc2VNYW5hZ2VyLmggKi8sCisJCQkJNDZDNkQxQzAxQTgwMzY4NDAwNEFDRjk4IC8qIFdL
RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi8sCiAJCQkJMUFCN0Q3OEMxMjg4Q0Q5QTAw
Q0ZEMDhDIC8qIFdLRG93bmxvYWQuY3BwICovLAogCQkJCTFBQjdENzhCMTI4OENEOUEwMENGRDA4
QyAvKiBXS0Rvd25sb2FkLmggKi8sCiAJCQkJQkNFNDY5NTcxMjE0RURGNDAwMEI5OEVCIC8qIFdL
Rm9ybVN1Ym1pc3Npb25MaXN0ZW5lci5jcHAgKi8sCkBAIC02NTIxLDggKzY1MTcsNiBAQAogCQkJ
CUJDODE0N0QzMTJGNjZEMzEwMDdCMkMzMiAvKiBJbmplY3RlZEJ1bmRsZU5hdmlnYXRpb25BY3Rp
b24uaCAqLywKIAkJCQk1MTI5MzVFMTEyODhEOTc4MDBBNEI2OTUgLyogSW5qZWN0ZWRCdW5kbGVQ
YWdlQ29udGV4dE1lbnVDbGllbnQuY3BwICovLAogCQkJCTUxMjkzNUUyMTI4OEQ5NzgwMEE0QjY5
NSAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oICovLAotCQkJCUNENjdE
MzA4MTVDMDdCRTAwMDg0M0FERiAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudC5jcHAgKi8sCi0JCQkJQ0Q2N0QzMDkxNUMwN0JFMDAwODQzQURGIC8qIEluamVjdGVk
QnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi8sCiAJCQkJRTFFRTUzRTYxMUY4
Q0ZGQjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAgKi8sCiAJ
CQkJRTFFRTUzREMxMUY4Q0Y5RjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNs
aWVudC5oICovLAogCQkJCUJDMTRFMTA3MTIwQjkwNUUwMDgyNkMwQyAvKiBJbmplY3RlZEJ1bmRs
ZVBhZ2VGb3JtQ2xpZW50LmNwcCAqLywKQEAgLTY1OTMsNyArNjU4Nyw2IEBACiAJCQkJN0NGNDdG
RjQxNzI3NUI3MTAwOEFDQjkxIC8qIFdLQnVuZGxlUGFnZUJhbm5lci5jcHAgKi8sCiAJCQkJN0NG
NDdGRjUxNzI3NUI3MTAwOEFDQjkxIC8qIFdLQnVuZGxlUGFnZUJhbm5lci5oICovLAogCQkJCTFB
QjQ3NEUzMTg0RDQ0OTgwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5o
ICovLAotCQkJCTFBQjQ3NEU3MTg0RDQ0RDAwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudC5oICovLAogCQkJCTFBQjQ3NERGMTg0RDQ0NkEwMDUxQjYyMiAvKiBX
S0J1bmRsZVBhZ2VFZGl0b3JDbGllbnQuaCAqLywKIAkJCQkxQUI0NzRFMTE4NEQ0NDgwMDA1MUI2
MjIgLyogV0tCdW5kbGVQYWdlRm9ybUNsaWVudC5oICovLAogCQkJCTFBQjQ3NEU1MTg0RDQ0QjQw
MDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggKi8sCkBAIC03MDQ4LDcg
KzcwNDEsNiBAQAogCQkJCUJDNDA3NURDMTI0RkYwMjcwMDY4RjIwQSAvKiBXS0RhdGEuaCAqLywK
IAkJCQkzNzdFQUQ0NDE3RTJDNTFBMDAyRDE5M0QgLyogV0tEZWNsYXJhdGlvblNwZWNpZmllcnMu
aCAqLywKIAkJCQkxQUZGNDhGRTE4MzNERTc4MDA5QUIxNUEgLyogV0tEZXByZWNhdGVkRnVuY3Rp
b25zLmNwcCAqLywKLQkJCQk4MzcyREIyRTFBNjc3RDRBMDBDNjk3QzUgLyogV0tEaWFnbm9zdGlj
TG9nZ2luZ1Jlc3VsdFR5cGUuaCAqLywKIAkJCQlCQzQwNzVERDEyNEZGMDI3MDA2OEYyMEEgLyog
V0tEaWN0aW9uYXJ5LmNwcCAqLywKIAkJCQlCQzQwNzVERTEyNEZGMDI3MDA2OEYyMEEgLyogV0tE
aWN0aW9uYXJ5LmggKi8sCiAJCQkJQkM0MDc1REYxMjRGRjAyNzAwNjhGMjBBIC8qIFdLRXJyb3JS
ZWYuY3BwICovLApAQCAtODA4Miw5ICs4MDc0LDcgQEAKIAkJCQlCQzIwNTI4MTExQzk0Mjg0MDA4
RjMzNzUgLyogV0tCdW5kbGVQYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk3Q0Y0N0ZGNzE3Mjc1
QjcxMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdlQmFubmVyLmggaW4gSGVhZGVycyAqLywKIAkJCQk3
Q0Y0N0ZGRjE3Mjc2QUUzMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdlQmFubmVyTWFjLmggaW4gSGVh
ZGVycyAqLywKLQkJCQk4MzcyREIyRjFBNjc3RDRBMDBDNjk3QzUgLyogV0tEaWFnbm9zdGljTG9n
Z2luZ1Jlc3VsdFR5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBQjQ3NEU0MTg0RDQ0OTgwMDUx
QjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oIGluIEhlYWRlcnMgKi8sCi0J
CQkJMUFCNDc0RTgxODRENDREMDAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dn
aW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk3Qzg5RDJCQzFBNkIwRjVCMDAzQTVGREUg
LyogX1dLVXNlckNvbnRlbnRGaWx0ZXJJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFC
NDc0RTAxODRENDQ2QTAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZUVkaXRvckNsaWVudC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJMUFCNDc0RTIxODRENDQ4MDAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZUZv
cm1DbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtODEyNyw2ICs4MTE3LDcgQEAKIAkJCQlCQzQw
NzVGQTEyNEZGMDI3MDA2OEYyMEEgLyogV0tEaWN0aW9uYXJ5LmggaW4gSGVhZGVycyAqLywKIAkJ
CQlCQzAxN0QwNzE2MjYwRkY0MDA3MDU0RjUgLyogV0tET01Eb2N1bWVudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQkMwMTdEMDkxNjI2MEZGNDAwNzA1NEY1IC8qIFdLRE9NRWxlbWVudC5oIGluIEhl
YWRlcnMgKi8sCisJCQkJNDZDNkQxQzExQTgwMzY4NDAwNEFDRjk4IC8qIFdLRGlhZ25vc3RpY0xv
Z2dpbmdSZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzAxN0QwQjE2MjYwRkY0MDA3
MDU0RjUgLyogV0tET01JbnRlcm5hbHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMDE3RDBEMTYy
NjBGRjQwMDcwNTRGNSAvKiBXS0RPTU5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUQyNEMy
MTZDRDcwNkQwMDdENTQ2MSAvKiBXS0RPTU5vZGVQcml2YXRlLmggaW4gSGVhZGVycyAqLywKQEAg
LTkzODMsNyArOTM3NCw2IEBACiAJCQkJQkM4MTQ3RDYxMkY2NkQzMTAwN0IyQzMyIC8qIEluamVj
dGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzRCRUVB
QzEyMEEwQTVGMDBGQkEwQzcgLyogSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTUxMjkzNUUzMTI4OEQ5NzgwMEE0QjY5NSAvKiBJbmplY3RlZEJ1bmRsZVBh
Z2VDb250ZXh0TWVudUNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlDRDY3RDMwRTE1QzA4
RjlBMDA4NDNBREYgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFFRTUzRTcxMUY4Q0ZGQjAwQ0NCRUU0IC8qIEluamVj
dGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCQzE0RTEw
OTEyMEI5MDVFMDA4MjZDMEMgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRm9ybUNsaWVudC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQlDRDVDNjZBMDEzNEI5RDM4MDA0RkUyQTggLyogSW5qZWN0ZWRCdW5k
bGVQYWdlRnVsbFNjcmVlbkNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdl
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tC
dW5kbGVQYWdlLmNwcAppbmRleCBhZjQ4MzUzYmFjMmVmYTAwYzExMGRiOTNmYmExMmQ0ODEyNDZh
MDdiLi43ZGU0YWE4MTA3MTZjNTI0NzNhNGE2NGQ4OWNiMWQ2YzkwYjIwNDY2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxl
UGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZVBhZ2UuY3BwCkBAIC0xNTQsMTEgKzE1NCw2IEBAIHZvaWQgV0tCdW5kbGVQ
YWdlRGlkRXhpdEZ1bGxTY3JlZW4oV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYpCiAjZW5kaWYKIH0K
IAotdm9pZCBXS0J1bmRsZVBhZ2VTZXREaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBh
Z2VSZWYgcGFnZVJlZiwgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRCYXNlKiBj
bGllbnQpCi17Ci0gICAgdG9JbXBsKHBhZ2VSZWYpLT5pbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVE
aWFnbm9zdGljTG9nZ2luZ0NsaWVudChjbGllbnQpOwotfQotCiBXS0J1bmRsZVBhZ2VHcm91cFJl
ZiBXS0J1bmRsZVBhZ2VHZXRQYWdlR3JvdXAoV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYpCiB7CiAg
ICAgcmV0dXJuIHRvQVBJKHRvSW1wbChwYWdlUmVmKS0+cGFnZUdyb3VwKCkpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRs
ZVBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2Mv
V0tCdW5kbGVQYWdlLmgKaW5kZXggNTliZDM0OGMxYjI5YWRjNzEwOTkwODFlNmU2OGI2OTY4NGRi
YTRiZC4uNGJmNzBjMGFhZTljYTRlYWVmNTIxNDkxM2FhMmYyNjg4NjZlMWYxYyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRs
ZVBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQ
SS9jL1dLQnVuZGxlUGFnZS5oCkBAIC0yOSw3ICsyOSw2IEBACiAjaW5jbHVkZSA8SmF2YVNjcmlw
dENvcmUvSmF2YVNjcmlwdC5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2UuaD4KICNpbmNsdWRl
IDxXZWJLaXQvV0tCdW5kbGVQYWdlQ29udGV4dE1lbnVDbGllbnQuaD4KLSNpbmNsdWRlIDxXZWJL
aXQvV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaD4KICNpbmNsdWRlIDxXZWJL
aXQvV0tCdW5kbGVQYWdlRWRpdG9yQ2xpZW50Lmg+CiAjaW5jbHVkZSA8V2ViS2l0L1dLQnVuZGxl
UGFnZUZvcm1DbGllbnQuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlRnVsbFNjcmVl
bkNsaWVudC5oPgpAQCAtNjUsNyArNjQsNiBAQCBXS19FWFBPUlQgdm9pZCBXS0J1bmRsZVBhZ2VT
ZXRSZXNvdXJjZUxvYWRDbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlUAogV0tf
RVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdlU2V0UG9saWN5Q2xpZW50KFdLQnVuZGxlUGFnZVJlZiBw
YWdlLCBXS0J1bmRsZVBhZ2VQb2xpY3lDbGllbnRCYXNlKiBjbGllbnQpOwogV0tfRVhQT1JUIHZv
aWQgV0tCdW5kbGVQYWdlU2V0VUlDbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxl
UGFnZVVJQ2xpZW50QmFzZSogY2xpZW50KTsKIFdLX0VYUE9SVCB2b2lkIFdLQnVuZGxlUGFnZVNl
dEZ1bGxTY3JlZW5DbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlUGFnZUZ1bGxT
Y3JlZW5DbGllbnRCYXNlKiBjbGllbnQpOwotV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdlU2V0
RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVuZGxlUGFn
ZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50QmFzZSogY2xpZW50KTsKIAogV0tfRVhQT1JUIFdLQnVu
ZGxlUGFnZUdyb3VwUmVmIFdLQnVuZGxlUGFnZUdldFBhZ2VHcm91cChXS0J1bmRsZVBhZ2VSZWYg
cGFnZSk7CiBXS19FWFBPUlQgV0tCdW5kbGVGcmFtZVJlZiBXS0J1bmRsZVBhZ2VHZXRNYWluRnJh
bWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkv
Yy9XS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA0Njc5MmQ1ODJkOTMwMDhhYjBmNTg4NzlmZmY3MjNkYTcwNGIwNTNkLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlRGlhZ25vc3Rp
Y0xvZ2dpbmdDbGllbnQuaAorKysgL2Rldi9udWxsCkBAIC0xLDc1ICswLDAgQEAKLS8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoKLSAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgot
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
LSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jaWZuZGVmIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50X2gKLSNkZWZp
bmUgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRfaAotCi0jaW5jbHVkZSA8V2Vi
S2l0L1dLQmFzZS5oPgotI2luY2x1ZGUgPFdlYktpdC9XS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0
VHlwZS5oPgotCi10eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Nh
bGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tTdHJp
bmdSZWYgZGVzY3JpcHRpb24sIFdLU3RyaW5nUmVmIHN1Y2Nlc3MsIGNvbnN0IHZvaWQqIGNsaWVu
dEluZm8pOwotdHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlTG9nRGlhZ25vc3RpY01lc3NhZ2VD
YWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIG1lc3NhZ2UsIFdLU3Ry
aW5nUmVmIGRlc2NyaXB0aW9uLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKLXR5cGVkZWYgdm9p
ZCAoKldLQnVuZGxlUGFnZUxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3VsdENhbGxiYWNrKShX
S0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tTdHJpbmdSZWYgZGVz
Y3JpcHRpb24sIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHJlc3VsdCwgY29uc3Qgdm9p
ZCogY2xpZW50SW5mbyk7Ci10eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VMb2dEaWFnbm9zdGlj
TWVzc2FnZVdpdGhWYWx1ZUNhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdS
ZWYgbWVzc2FnZSwgV0tTdHJpbmdSZWYgZGVzY3JpcHRpb24sIFdLU3RyaW5nUmVmIHZhbHVlLCBj
b25zdCB2b2lkKiBjbGllbnRJbmZvKTsKLQotdHlwZWRlZiBzdHJ1Y3QgV0tCdW5kbGVQYWdlRGlh
Z25vc3RpY0xvZ2dpbmdDbGllbnRCYXNlIHsKLSAgICBpbnQgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb247Ci0gICAg
Y29uc3Qgdm9pZCAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBjbGllbnRJbmZvOwotfSBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudEJhc2U7Ci0KLXR5cGVkZWYgc3RydWN0IFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5n
Q2xpZW50VjAgewotICAgIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50QmFzZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZTsKLQotICAgIC8vIFZlcnNpb24gMC4KLSAg
ICBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NhbGxiYWNrICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlOwotfSBXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudFYwOwotCi10eXBlZGVmIHN0cnVjdCBXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudFYxIHsKLSAgICBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2U7Ci0KLSAgICAvLyBWZXJz
aW9uIDAuCi0gICAgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDYWxsYmFjayAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQ7Ci0K
LSAgICAvLyBWZXJzaW9uIDEuCi0gICAgV0tCdW5kbGVQYWdlTG9nRGlhZ25vc3RpY01lc3NhZ2VD
YWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZTsK
LSAgICBXS0J1bmRsZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhSZXN1bHRDYWxsYmFjayAg
ICAgICAgICAgICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3VsdDsKLSAgICBXS0J1
bmRsZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZUNhbGxiYWNrICAgICAgICAgICAg
ICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlOwotfSBXS0J1bmRsZVBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudFYxOwotCi1lbnVtIHsga1dLQnVuZGxlUGFnZURpYWdub3N0aWNM
b2dnaW5nQ2xpZW50Q3VycmVudFZlcnNpb24gV0tfRU5VTV9ERVBSRUNBVEVEKCJVc2UgYW4gZXhw
bGljaXQgdmVyc2lvbiBudW1iZXIgaW5zdGVhZCIpID0gMSB9OwotdHlwZWRlZiBzdHJ1Y3QgV0tC
dW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgewotICAgIGludCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVyc2lv
bjsKLSAgICBjb25zdCB2b2lkICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGNsaWVudEluZm87Ci0KLSAgICAvLyBWZXJzaW9uIDAuCi0gICAg
V0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDYWxsYmFjayAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQ7Ci0KLSAgICAvLyBWZXJz
aW9uIDEuCi0gICAgV0tCdW5kbGVQYWdlTG9nRGlhZ25vc3RpY01lc3NhZ2VDYWxsYmFjayAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZTsKLSAgICBXS0J1bmRs
ZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhSZXN1bHRDYWxsYmFjayAgICAgICAgICAgICAg
ICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3VsdDsKLSAgICBXS0J1bmRsZVBhZ2VMb2dE
aWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZUNhbGxiYWNrICAgICAgICAgICAgICAgICAgIGxvZ0Rp
YWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlOwotfSBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudCBXS19DX0RFUFJFQ0FURUQoIlVzZSBhbiBleHBsaWNpdCB2ZXJzaW9uZWQgc3RydWN0
IGluc3RlYWQiKTsKLQotI2VuZGlmIC8vIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xp
ZW50X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwIGIvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ0
M2YwYzZiMjQ4NWNkZGJiNTdhOWUyYTNhZjM1MWQ0NmIwNzBmNWIuLjAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5j
cHAKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMg
YGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg
TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0Ug
QVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRS
SUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUg
R09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBP
UiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0gKiBBUklTSU5HIElO
IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1ZGUg
ImNvbmZpZy5oIgotI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5n
Q2xpZW50LmgiCi0KLSNpbmNsdWRlICJXS0FQSUNhc3QuaCIKLSNpbmNsdWRlICJXS0J1bmRsZUFQ
SUNhc3QuaCIKLSNpbmNsdWRlICJXZWJQYWdlLmgiCi0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi12
b2lkIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFnbm9z
dGljTWVzc2FnZURlcHJlY2F0ZWQoV2ViUGFnZSogcGFnZSwgY29uc3QgU3RyaW5nJiBtZXNzYWdl
LCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBjb25zdCBTdHJpbmcmIHN1Y2Nlc3MpCi17Ci0g
ICAgaWYgKCFtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQpCi0gICAgICAg
IHJldHVybjsKLSAgICBtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQodG9B
UEkocGFnZSksIHRvQVBJKG1lc3NhZ2UuaW1wbCgpKSwgdG9BUEkoZGVzY3JpcHRpb24uaW1wbCgp
KSwgdG9BUEkoc3VjY2Vzcy5pbXBsKCkpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwotfQot
Ci12b2lkIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFn
bm9zdGljTWVzc2FnZShXZWJQYWdlKiBwYWdlLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0
IFN0cmluZyYgZGVzY3JpcHRpb24pCi17Ci0gICAgaWYgKCFtX2NsaWVudC5sb2dEaWFnbm9zdGlj
TWVzc2FnZSkKLSAgICAgICAgcmV0dXJuOwotICAgIG1fY2xpZW50LmxvZ0RpYWdub3N0aWNNZXNz
YWdlKHRvQVBJKHBhZ2UpLCB0b0FQSShtZXNzYWdlLmltcGwoKSksIHRvQVBJKGRlc2NyaXB0aW9u
LmltcGwoKSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7Ci19Ci0KLXZvaWQgSW5qZWN0ZWRC
dW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OmxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0
aFJlc3VsdChXZWJQYWdlKiBwYWdlLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmlu
ZyYgZGVzY3JpcHRpb24sIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZSByZXN1
bHQpCi17Ci0gICAgaWYgKCFtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhSZXN1bHQp
Ci0gICAgICAgIHJldHVybjsKLSAgICBtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhS
ZXN1bHQodG9BUEkocGFnZSksIHRvQVBJKG1lc3NhZ2UuaW1wbCgpKSwgdG9BUEkoZGVzY3JpcHRp
b24uaW1wbCgpKSwgdG9BUEkocmVzdWx0KSwgbV9jbGllbnQuYmFzZS5jbGllbnRJbmZvKTsKLX0K
LQotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudDo6bG9nRGlh
Z25vc3RpY01lc3NhZ2VXaXRoVmFsdWUoV2ViUGFnZSogcGFnZSwgY29uc3QgU3RyaW5nJiBtZXNz
YWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBjb25zdCBTdHJpbmcmIHZhbHVlKQotewot
ICAgIGlmICghbV9jbGllbnQubG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoVmFsdWUpCi0gICAgICAg
IHJldHVybjsKLSAgICBtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZSh0b0FQ
SShwYWdlKSwgdG9BUEkobWVzc2FnZS5pbXBsKCkpLCB0b0FQSShkZXNjcmlwdGlvbi5pbXBsKCkp
LCB0b0FQSSh2YWx1ZS5pbXBsKCkpLCBtX2NsaWVudC5iYXNlLmNsaWVudEluZm8pOwotfQotCi19
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0lu
amVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNM
b2dnaW5nQ2xpZW50LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDllZGFhN2M3Njgz
ZDZiMTVjNDc2NWIzMDQ2YzBlYTU2ZGY5ZTVjZWUuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1
bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oCisrKyAvZGV2
L251bGwKQEAgLTEsNTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMiBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
LSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwot
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgSW5qZWN0ZWRCdW5k
bGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRfaAotI2RlZmluZSBJbmplY3RlZEJ1bmRsZVBh
Z2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudF9oCi0KLSNpbmNsdWRlICJBUElDbGllbnQuaCIKLSNp
bmNsdWRlICJXS0J1bmRsZVBhZ2UuaCIKLSNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KU0Jhc2Uu
aD4KLSNpbmNsdWRlIDxXZWJDb3JlL0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZS5oPgotI2lu
Y2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+Ci0KLW5hbWVzcGFjZSBBUEkgewotdGVtcGxhdGU8PiBzdHJ1
Y3QgQ2xpZW50VHJhaXRzPFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50QmFzZT4g
ewotICAgIHR5cGVkZWYgc3RkOjp0dXBsZTxXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudFYwLCBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudFYxPiBWZXJzaW9uczsK
LX07Ci19Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBJbmplY3RlZEJ1bmRsZUhpdFRl
c3RSZXN1bHQ7Ci1jbGFzcyBXZWJDb250ZXh0TWVudUl0ZW1EYXRhOwotY2xhc3MgV2ViUGFnZTsK
LQotY2xhc3MgSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgOiBwdWJs
aWMgQVBJOjpDbGllbnQ8V0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRCYXNlPiB7
Ci1wdWJsaWM6Ci0gICAgdm9pZCBsb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQoV2ViUGFn
ZSosIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZXNjcmlwdGlvbiwgY29u
c3QgU3RyaW5nJiBzdWNjZXNzKTsKLSAgICB2b2lkIGxvZ0RpYWdub3N0aWNNZXNzYWdlKFdlYlBh
Z2UqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24pOwot
ICAgIHZvaWQgbG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoUmVzdWx0KFdlYlBhZ2UqLCBjb25zdCBT
dHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdlYkNvcmU6OkRpYWdu
b3N0aWNMb2dnaW5nUmVzdWx0VHlwZSk7Ci0gICAgdm9pZCBsb2dEaWFnbm9zdGljTWVzc2FnZVdp
dGhWYWx1ZShXZWJQYWdlKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRl
c2NyaXB0aW9uLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKLX07Ci0KLX0gLy8gbmFtZXNwYWNlIFdl
YktpdAotCi0jZW5kaWYgLy8gSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGll
bnRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcAppbmRleCAw
ZWExODIwNzYwOWZiNmJkNzZjNThjYTRkNDhmNTBhYzdmZDQ1YzA2Li43ZGY2ZDY0M2U3ZGI2NTAw
MWZjNjhiZmE4NTBhOWM3NWJkMzgzOGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNM
b2dnaW5nQ2xpZW50LmNwcApAQCAtNDYsOCArNDYsNiBAQCB2b2lkIFdlYkRpYWdub3N0aWNMb2dn
aW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZShjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNv
bgogICAgIGlmICghbV9wYWdlLmNvcmVQYWdlKCktPnNldHRpbmdzKCkuZGlhZ25vc3RpY0xvZ2dp
bmdFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhp
cyBpbmplY3RlZCBidW5kbGUgQVBJLgotICAgIG1fcGFnZS5pbmplY3RlZEJ1bmRsZURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25vc3RpY01lc3NhZ2UoJm1fcGFnZSwgbWVzc2FnZSwg
ZGVzY3JpcHRpb24pOwogICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Okxv
Z0RpYWdub3N0aWNNZXNzYWdlKG1lc3NhZ2UsIGRlc2NyaXB0aW9uLCBzaG91bGRTYW1wbGUgPT0g
V2ViQ29yZTo6U2hvdWxkU2FtcGxlOjpZZXMpKTsKIH0KIApAQCAtNTYsOCArNTQsNiBAQCB2b2lk
IFdlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhSZXN1
bHQoY29uc3QgU3RyaW5nJiBtZQogICAgIGlmICghbV9wYWdlLmNvcmVQYWdlKCktPnNldHRpbmdz
KCkuZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8v
IEZJWE1FOiBSZW1vdmUgdGhpcyBpbmplY3RlZCBidW5kbGUgQVBJLgotICAgIG1fcGFnZS5pbmpl
Y3RlZEJ1bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25vc3RpY01lc3NhZ2VX
aXRoUmVzdWx0KCZtX3BhZ2UsIG1lc3NhZ2UsIGRlc2NyaXB0aW9uLCByZXN1bHQpOwogICAgIG1f
cGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0
aFJlc3VsdChtZXNzYWdlLCBkZXNjcmlwdGlvbiwgcmVzdWx0LCBzaG91bGRTYW1wbGUgPT0gV2Vi
Q29yZTo6U2hvdWxkU2FtcGxlOjpZZXMpKTsKIH0KIApAQCAtNjYsOCArNjIsNiBAQCB2b2lkIFdl
YkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZShj
b25zdCBTdHJpbmcmIG1lcwogICAgIGlmICghbV9wYWdlLmNvcmVQYWdlKCktPnNldHRpbmdzKCku
ZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJ
WE1FOiBSZW1vdmUgdGhpcyBpbmplY3RlZCBidW5kbGUgQVBJLgotICAgIG1fcGFnZS5pbmplY3Rl
ZEJ1bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRo
VmFsdWUoJm1fcGFnZSwgbWVzc2FnZSwgZGVzY3JpcHRpb24sIHZhbHVlKTsKICAgICBtX3BhZ2Uu
c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1
ZShtZXNzYWdlLCBkZXNjcmlwdGlvbiwgdmFsdWUsIHNob3VsZFNhbXBsZSA9PSBXZWJDb3JlOjpT
aG91bGRTYW1wbGU6OlllcykpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggZDFiOGI3ZGI3ZWQyMGRhZDcwZmQ2YTg1YjIzYTk4NTNh
Mjg5MDAxYS4uMzA3NzI0MTEyZDFjN2I4YTAzYjE3ZjZhNGE0NWE0ZmY2NTNjYjcyNyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtNjUsNyAr
NjUsNiBAQAogI2luY2x1ZGUgIldlYkNvbnRleHRNZW51Q2xpZW50LmgiCiAjaW5jbHVkZSAiV2Vi
Q29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSAiV2ViRGF0YWJhc2VQcm92aWRlci5oIgot
I2luY2x1ZGUgIldlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmgiCiAjaW5jbHVkZSAiV2ViRG9j
dW1lbnRMb2FkZXIuaCIKICNpbmNsdWRlICJXZWJEcmFnQ2xpZW50LmgiCiAjaW5jbHVkZSAiV2Vi
RWRpdG9yQ2xpZW50LmgiCkBAIC0zNzEsNyArMzcwLDYgQEAgV2ViUGFnZTo6V2ViUGFnZSh1aW50
NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMmIHBhcmFtZXRlcnMp
CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24ucGx1Z0luQ2xpZW50ID0gbmV3IFdlYlBsdWdJbkNsaWVu
dCgqdGhpcyk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24ubG9hZGVyQ2xpZW50Rm9yTWFpbkZyYW1l
ID0gbmV3IFdlYkZyYW1lTG9hZGVyQ2xpZW50OwogICAgIHBhZ2VDb25maWd1cmF0aW9uLnByb2dy
ZXNzVHJhY2tlckNsaWVudCA9IG5ldyBXZWJQcm9ncmVzc1RyYWNrZXJDbGllbnQoKnRoaXMpOwot
ICAgIHBhZ2VDb25maWd1cmF0aW9uLmRpYWdub3N0aWNMb2dnaW5nQ2xpZW50ID0gbmV3IFdlYkRp
YWdub3N0aWNMb2dnaW5nQ2xpZW50KCp0aGlzKTsKIAogICAgIHBhZ2VDb25maWd1cmF0aW9uLmRh
dGFiYXNlUHJvdmlkZXIgPSBXZWJEYXRhYmFzZVByb3ZpZGVyOjpnZXRPckNyZWF0ZShtX3BhZ2VH
cm91cC0+cGFnZUdyb3VwSUQoKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24uc3RvcmFnZU5hbWVz
cGFjZVByb3ZpZGVyID0gV2ViU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyOjpnZXRPckNyZWF0ZSht
X3BhZ2VHcm91cC0+cGFnZUdyb3VwSUQoKSk7CkBAIC02NjUsMTEgKzY2Myw2IEBAIHZvaWQgV2Vi
UGFnZTo6aW5pdGlhbGl6ZUluamVjdGVkQnVuZGxlRnVsbFNjcmVlbkNsaWVudChXS0J1bmRsZVBh
Z2VGdWxsU2NyZWVuQ2xpCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJQYWdlOjppbml0aWFsaXplSW5q
ZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBhZ2VEaWFnbm9zdGlj
TG9nZ2luZ0NsaWVudEJhc2UqIGNsaWVudCkKLXsKLSAgICBtX2xvZ0RpYWdub3N0aWNNZXNzYWdl
Q2xpZW50LmluaXRpYWxpemUoY2xpZW50KTsKLX0KLQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVH
SU5fQVBJKQogUGFzc1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBsdWdpbihXZWJGcmFt
ZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBjb25zdCBQbHVnaW46
OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUpCiB7CkBAIC05NjMs
NyArOTU2LDYgQEAgdm9pZCBXZWJQYWdlOjpjbG9zZSgpCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5f
QVBJKQogICAgIG1fZnVsbFNjcmVlbkNsaWVudC5pbml0aWFsaXplKDApOwogI2VuZGlmCi0gICAg
bV9sb2dEaWFnbm9zdGljTWVzc2FnZUNsaWVudC5pbml0aWFsaXplKDApOwogCiAgICAgbV9wcmlu
dENvbnRleHQgPSBudWxscHRyOwogICAgIG1fbWFpbkZyYW1lLT5jb3JlRnJhbWUoKS0+bG9hZGVy
KCkuZGV0YWNoRnJvbVBhcmVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmgKaW5kZXggMjE3MmIwNGIxNDk3Zjc2NTM2NWRhMTlmY2JjZjBjNzFiMGQyOWY2
ZC4uNDc3OGVkNDc0OTM0NWJlYTllMjE4OTlkYjQzMjI4NGJmNDcwYWE1MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC0zNCw3ICszNCw2IEBACiAj
aW5jbHVkZSAiRmluZENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJHZW9sb2NhdGlvblBlcm1pc3Np
b25SZXF1ZXN0TWFuYWdlci5oIgogI2luY2x1ZGUgIkltYWdlT3B0aW9ucy5oIgotI2luY2x1ZGUg
IkluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmgiCiAjaW5jbHVkZSAi
SW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5k
bGVQYWdlRnVsbFNjcmVlbkNsaWVudC5oIgogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZUxv
YWRlckNsaWVudC5oIgpAQCAtMjkzLDcgKzI5Miw2IEBAIHB1YmxpYzoKICNpZiBFTkFCTEUoRlVM
TFNDUkVFTl9BUEkpCiAgICAgdm9pZCBpbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVGdWxsU2NyZWVu
Q2xpZW50KFdLQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnRCYXNlKik7CiAjZW5kaWYKLSAgICB2
b2lkIGluaXRpYWxpemVJbmplY3RlZEJ1bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KFdLQnVu
ZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50QmFzZSopOwogCiAjaWYgRU5BQkxFKENPTlRF
WFRfTUVOVVMpCiAgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZUNvbnRleHRNZW51Q2xpZW50
JiBpbmplY3RlZEJ1bmRsZUNvbnRleHRNZW51Q2xpZW50KCkgeyByZXR1cm4gKm1fY29udGV4dE1l
bnVDbGllbnQuZ2V0KCk7IH0KQEAgLTMwNCw3ICszMDIsNiBAQCBwdWJsaWM6CiAgICAgSW5qZWN0
ZWRCdW5kbGVQYWdlUG9saWN5Q2xpZW50JiBpbmplY3RlZEJ1bmRsZVBvbGljeUNsaWVudCgpIHsg
cmV0dXJuIG1fcG9saWN5Q2xpZW50OyB9CiAgICAgSW5qZWN0ZWRCdW5kbGVQYWdlUmVzb3VyY2VM
b2FkQ2xpZW50JiBpbmplY3RlZEJ1bmRsZVJlc291cmNlTG9hZENsaWVudCgpIHsgcmV0dXJuIG1f
cmVzb3VyY2VMb2FkQ2xpZW50OyB9CiAgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZVVJQ2xp
ZW50JiBpbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkgeyByZXR1cm4gKm1fdWlDbGllbnQuZ2V0KCk7
IH0KLSAgICBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCYgaW5qZWN0
ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgpIHsgcmV0dXJuIG1fbG9nRGlhZ25vc3Rp
Y01lc3NhZ2VDbGllbnQ7IH0KICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAgSW5qZWN0
ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudCYgaW5qZWN0ZWRCdW5kbGVGdWxsU2NyZWVuQ2xp
ZW50KCkgeyByZXR1cm4gbV9mdWxsU2NyZWVuQ2xpZW50OyB9CiAjZW5kaWYKQEAgLTExOTcsNyAr
MTE5NCw2IEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQogICAgIEluamVj
dGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQgbV9mdWxsU2NyZWVuQ2xpZW50OwogI2VuZGlm
Ci0gICAgSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgbV9sb2dEaWFn
bm9zdGljTWVzc2FnZUNsaWVudDsKIAogICAgIEZpbmRDb250cm9sbGVyIG1fZmluZENvbnRyb2xs
ZXI7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247529</attachid>
            <date>2015-02-27 11:46:44 -0800</date>
            <delta_ts>2015-02-27 17:43:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141176-20150227114629.patch</filename>
            <type>text/plain</type>
            <size>46587</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNzcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMGMyOTE5MmY4NGRjM2My
NzQ1MjgxZWVmMjhiMmE0MGE4YmE1ZjY3Zi4uN2YxNTZlZGIyODE5NjJhNzIyNWUyZjk3OTUxMjZl
MTc2NmMwNzY2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM5IEBACisyMDE1LTAyLTAyICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgW1dLMl0gRHJvcCBsZWdhY3kg
V0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDExNzYKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBEcm9wIGxlZ2FjeSBXS0J1bmRsZVBhZ2VE
aWFnbm9zdGljTG9nZ2luZ0NsaWVudCBXSzIgQVBJIGFzIHdlIGFyZSBub3cKKyAgICAgICAgZXhw
b3NpbmcgdGhpcyBmdW5jdGlvbmFsaXR5IHZpYSBXS1BhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dC5oIG9uCisgICAgICAgIFVJUHJvY2VzcyBzaWRlLiBUaGUgY2xpZW50LXNpZGUgaGFzIGFscmVh
ZHkgYmVlbiBwb3J0ZWQgb3Zlci4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAg
ICAqIFNoYXJlZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3QuaDoKKyAgICAgICAgKFdlYktpdDo6dG9B
UEkpOiBEZWxldGVkLgorICAgICAgICAoV2ViS2l0Ojp0b0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0
VHlwZSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLQVBJQ2FzdC5oOgor
ICAgICAgICAoV2ViS2l0Ojp0b0FQSSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLRGlh
Z25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmg6IFJlbmFtZWQgZnJvbSBTb3VyY2UvV2ViS2l0Mi9T
aGFyZWQvQVBJL2MvV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaC4KKyAgICAgICAgKiBX
ZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9J
bmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwOgorICAgICAgICAoV0tCdW5kbGVQ
YWdlU2V0RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQpOiBEZWxldGVkLgorICAgICAgICAqIFdlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmg6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudC5oOiBSZW1vdmVkLgorICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUv
SW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwOiBSZW1vdmVkLgor
ICAgICAgICAqIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlRGlh
Z25vc3RpY0xvZ2dpbmdDbGllbnQuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcDoKKyAgICAgICAgKFdl
YktpdDo6V2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OmxvZ0RpYWdub3N0aWNNZXNzYWdlKToK
KyAgICAgICAgKFdlYktpdDo6V2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OmxvZ0RpYWdub3N0
aWNNZXNzYWdlV2l0aFJlc3VsdCk6CisgICAgICAgIChXZWJLaXQ6OldlYkRpYWdub3N0aWNMb2dn
aW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZSk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpX
ZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6Y2xvc2UpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJQYWdlOjppbml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCk6IERlbGV0ZWQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoK
KyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6aW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2lu
Z0NsaWVudCk6IERlbGV0ZWQuCisKIDIwMTUtMDItMjYgIEVucmljYSBDYXN1Y2NpICA8ZW5yaWNh
QGFwcGxlLmNvbT4KIAogICAgICAgICBbV0syXSBSRUdSRVNTSU9OKHIxODA0NjUpOiBXZWJLaXQ6
OldlYlBhZ2U6OmVkaXRvclN0YXRlKCkgdHJpZ2dlcnMgYSBsYXlvdXQuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9DTWFrZUxpc3RzLnR4dCBiL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMu
dHh0CmluZGV4IGNjYjc0NzA1N2M1Y2MwMjRmNzUyNjMwY2IwYzA5YjBkOGY4ZGY3Y2EuLjY4MTQ5
MDU2NmVjZmM2ZWQxNWM4ZDU3NzMxMmUzNTVhNDljOGZjMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL0NNYWtlTGlzdHMudHh0CisrKyBiL1NvdXJjZS9XZWJLaXQyL0NNYWtlTGlzdHMudHh0
CkBAIC01MTAsNyArNTEwLDYgQEAgc2V0KFdlYktpdDJfU09VUkNFUwogICAgIFdlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVIaXRUZXN0UmVzdWx0LmNwcAogICAgIFdlYlBy
b2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVOYXZpZ2F0aW9uQWN0aW9uLmNwcAog
ICAgIFdlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlQ29udGV4dE1l
bnVDbGllbnQuY3BwCi0gICAgV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRs
ZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5jcHAKICAgICBXZWJQcm9jZXNzL0luamVjdGVk
QnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAKICAgICBXZWJQcm9jZXNz
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZUZvcm1DbGllbnQuY3BwCiAgICAgV2Vi
UHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLRGlhZ25vc3Rp
Y0xvZ2dpbmdSZXN1bHRUeXBlLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tEaWFn
bm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
NTgxYzc0Zjk2MTU3NTM2ZWNlMTVhODc0OWQ1NThjMDNjZjY1YmI4Yi4uMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJ
L2MvV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaAorKysgL2Rldi9udWxsCkBAIC0xLDQ1
ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMsIDIwMTUgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdLRGlhZ25vc3RpY0xvZ2dpbmdS
ZXN1bHRUeXBlX2gKLSNkZWZpbmUgV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGVfaAotCi0j
aWZkZWYgX19jcGx1c3BsdXMKLWV4dGVybiAiQyIgewotI2VuZGlmCi0KLWVudW0gewotICAgIGtX
S0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0UGFzcyA9IDAsCi0gICAga1dLRGlhZ25vc3RpY0xvZ2dp
bmdSZXN1bHRGYWlsID0gMSwKLSAgICBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdE5vb3AgPSAy
LAotfTsKLXR5cGVkZWYgdWludDMyX3QgV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGU7Ci0K
LSNpZmRlZiBfX2NwbHVzcGx1cwotfQotI2VuZGlmCi0KLSNlbmRpZiAvKiBXS0RpYWdub3N0aWNM
b2dnaW5nUmVzdWx0VHlwZV9oICovCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9BUEkvYy9XS1NoYXJlZEFQSUNhc3QuaCBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9X
S1NoYXJlZEFQSUNhc3QuaAppbmRleCA5NDBkNzI2NTMyYzg5NjBmNGUxNDU3NzE1N2M1NzBjYTM0
MjBmZDI4Li5mMmQ1MmY3MGIwY2ZkZjg1NWU0YzcwN2U1MTQyMDNiYzk1ZDE1NWY0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTaGFyZWRBUElDYXN0LmgKKysrIGIv
U291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU2hhcmVkQVBJQ2FzdC5oCkBAIC0zOCw3ICsz
OCw2IEBACiAjaW5jbHVkZSAiU2FtZURvY3VtZW50TmF2aWdhdGlvblR5cGUuaCIKICNpbmNsdWRl
ICJXS0Jhc2UuaCIKICNpbmNsdWRlICJXS0NvbnRleHRNZW51SXRlbVR5cGVzLmgiCi0jaW5jbHVk
ZSAiV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCIKICNpbmNsdWRlICJXS0V2ZW50Lmgi
CiAjaW5jbHVkZSAiV0tGaW5kT3B0aW9ucy5oIgogI2luY2x1ZGUgIldLR2VvbWV0cnkuaCIKQEAg
LTUxLDcgKzUwLDYgQEAKICNpbmNsdWRlICJXZWJFdmVudC5oIgogI2luY2x1ZGUgIldlYkZpbmRP
cHRpb25zLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9Db250ZXh0TWVudUl0ZW0uaD4KLSNpbmNsdWRl
IDxXZWJDb3JlL0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZS5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvRmxvYXRSZWN0Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZUxvYWRlclR5cGVzLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9JbnRSZWN0Lmg+CkBAIC04MTUsNDQgKzgxMyw2IEBAIGlubGluZSBT
YW1lRG9jdW1lbnROYXZpZ2F0aW9uVHlwZSB0b1NhbWVEb2N1bWVudE5hdmlnYXRpb25UeXBlKFdL
U2FtZURvY3VtZW50TmF2CiAgICAgcmV0dXJuIHR5cGU7CiB9CiAKLWlubGluZSBXS0RpYWdub3N0
aWNMb2dnaW5nUmVzdWx0VHlwZSB0b0FQSShXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3Vs
dFR5cGUgdHlwZSkKLXsKLSAgICBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZSB3a1R5cGU7
Ci0KLSAgICBzd2l0Y2ggKHR5cGUpIHsKLSAgICBjYXNlIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dn
aW5nUmVzdWx0UGFzczoKLSAgICAgICAgd2tUeXBlID0ga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHRQYXNzOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dn
aW5nUmVzdWx0RmFpbDoKLSAgICAgICAgd2tUeXBlID0ga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHRGYWlsOwotICAgICAgICBicmVhazsKLSAgICBjYXNlIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dn
aW5nUmVzdWx0Tm9vcDoKLSAgICAgICAgd2tUeXBlID0ga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1
bHROb29wOwotICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICByZXR1cm4gd2tUeXBlOwotfQot
Ci1pbmxpbmUgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHRvRGlhZ25vc3Rp
Y0xvZ2dpbmdSZXN1bHRUeXBlKFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHdrVHlwZSkK
LXsKLSAgICBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUgdHlwZTsKLQotICAg
IHN3aXRjaCAod2tUeXBlKSB7Ci0gICAgY2FzZSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFBh
c3M6Ci0gICAgICAgIHR5cGUgPSBXZWJDb3JlOjpEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFBhc3M7
Ci0gICAgICAgIGJyZWFrOwotICAgIGNhc2Uga1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWls
OgotICAgICAgICB0eXBlID0gV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRGYWlsOwot
ICAgICAgICBicmVhazsKLSAgICBjYXNlIGtXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9vcDoK
LSAgICAgICAgdHlwZSA9IFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9vcDsKLSAg
ICAgICAgYnJlYWs7Ci0gICAgfQotCi0gICAgcmV0dXJuIHR5cGU7Ci19Ci0KIGlubGluZSBXS0xh
eW91dE1pbGVzdG9uZXMgdG9XS0xheW91dE1pbGVzdG9uZXMoV2ViQ29yZTo6TGF5b3V0TWlsZXN0
b25lcyBtaWxlc3RvbmVzKQogewogICAgIHVuc2lnbmVkIHdrTWlsZXN0b25lcyA9IDA7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tBUElDYXN0LmgKaW5kZXggZGM0N2ZiZTNlMzcw
NDkzZDc2YjRjYjI4ZDRkYzIwOTljOTA5ZTNhYy4uYzRkOGQ4ZDE5M2E4OGYwMTFmMGQ0YzQ4Y2Jk
NDk3NDA0YTMxZTAzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9D
L1dLQVBJQ2FzdC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS0FQSUNh
c3QuaApAQCAtMzgsNiArMzgsNyBAQAogI2luY2x1ZGUgIldLQ29udGV4dC5oIgogI2luY2x1ZGUg
IldLQ29va2llTWFuYWdlci5oIgogI2luY2x1ZGUgIldLQ3JlZGVudGlhbFR5cGVzLmgiCisjaW5j
bHVkZSAiV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCIKICNpbmNsdWRlICJXS1BhZ2Uu
aCIKICNpbmNsdWRlICJXS1ByZWZlcmVuY2VzUmVmLmgiCiAjaW5jbHVkZSAiV0tQcmVmZXJlbmNl
c1JlZlByaXZhdGUuaCIKQEAgLTQ2LDYgKzQ3LDcgQEAKICNpbmNsdWRlICJXS1NoYXJlZEFQSUNh
c3QuaCIKICNpbmNsdWRlICJXZWJHcmFtbWFyRGV0YWlsLmgiCiAjaW5jbHVkZSA8V2ViQ29yZS9D
cmVkZW50aWFsLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9EaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5
cGUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyVHlwZXMuaD4KICNpbmNsdWRlIDxX
ZWJDb3JlL1Byb3RlY3Rpb25TcGFjZS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2V0dGluZ3MuaD4K
QEAgLTUyNSw2ICs1MjcsMjUgQEAgaW5saW5lIFdLV2ViR0xMb2FkUG9saWN5IHRvQVBJKFdlYkNv
cmU6OldlYkdMTG9hZFBvbGljeSB3ZWJHTExvYWRQb2xpY3kpCiAgICAgcmV0dXJuIGtXS1dlYkdM
TG9hZFBvbGljeUxvYWROb3JtYWxseTsKIH0KIAoraW5saW5lIFdLRGlhZ25vc3RpY0xvZ2dpbmdS
ZXN1bHRUeXBlIHRvQVBJKFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZSB0eXBl
KQoreworICAgIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHdrVHlwZTsKKworICAgIHN3
aXRjaCAodHlwZSkgeworICAgIGNhc2UgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRQ
YXNzOgorICAgICAgICB3a1R5cGUgPSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFBhc3M7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRG
YWlsOgorICAgICAgICB3a1R5cGUgPSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdEZhaWw7Cisg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgV2ViQ29yZTo6RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRO
b29wOgorICAgICAgICB3a1R5cGUgPSBrV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdE5vb3A7Cisg
ICAgICAgIGJyZWFrOworICAgIH0KKworICAgIHJldHVybiB3a1R5cGU7Cit9CisKIGlubGluZSBQ
cm94eWluZ1JlZlB0cjxXZWJHcmFtbWFyRGV0YWlsPiB0b0FQSShjb25zdCBXZWJDb3JlOjpHcmFt
bWFyRGV0YWlsJiBncmFtbWFyRGV0YWlsKQogewogICAgIHJldHVybiBQcm94eWluZ1JlZlB0cjxX
ZWJHcmFtbWFyRGV0YWlsPihXZWJHcmFtbWFyRGV0YWlsOjpjcmVhdGUoZ3JhbW1hckRldGFpbCkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLRGlhZ25vc3Rp
Y0xvZ2dpbmdSZXN1bHRUeXBlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tE
aWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ODFjNzRmOTYxNTc1MzZl
Y2UxNWE4NzQ5ZDU1OGMwM2NmNjViYjhiCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9DL1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmgKQEAgLTAs
MCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMywgMjAxNSBBcHBsZSBJbmMuIEFs
bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFy
ZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5E
IEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJ
QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1Q
TEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VT
OyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQ
VElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBU
SEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJ
QklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgV0tEaWFnbm9zdGljTG9nZ2lu
Z1Jlc3VsdFR5cGVfaAorI2RlZmluZSBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZV9oCisK
KyNpZmRlZiBfX2NwbHVzcGx1cworZXh0ZXJuICJDIiB7CisjZW5kaWYKKworZW51bSB7CisgICAg
a1dLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRQYXNzID0gMCwKKyAgICBrV0tEaWFnbm9zdGljTG9n
Z2luZ1Jlc3VsdEZhaWwgPSAxLAorICAgIGtXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0Tm9vcCA9
IDIsCit9OwordHlwZWRlZiB1aW50MzJfdCBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZTsK
KworI2lmZGVmIF9fY3BsdXNwbHVzCit9CisjZW5kaWYKKworI2VuZGlmIC8qIFdLRGlhZ25vc3Rp
Y0xvZ2dpbmdSZXN1bHRUeXBlX2ggKi8KKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
S2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGUxMGM2MWYzYjRjY2VmY2M4YzQwMmU4ZGI3
OWQ0Njc4ODRhMjExN2MuLjk0MGJlNmJmZmFkNjQ1ODA0MmEzZjRlYTZkYzE0OGYyNGQ5NTk0OTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oKQEAgLTM5NCw3ICszOTQsNiBAQAogCQkxQUI0NzRFMjE4NEQ0NDgwMDA1MUI2MjIgLyogV0tC
dW5kbGVQYWdlRm9ybUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUFCNDc0RTExODRENDQ4MDAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZUZvcm1D
bGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owog
CQkxQUI0NzRFNDE4NEQ0NDk4MDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlQ29udGV4dE1lbnVDbGll
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQjQ3
NEUzMTg0RDQ0OTgwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oICov
OyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFBQjQ3NEU2
MTg0RDQ0QjQwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI0NzRFNTE4NEQ0NEI0
MDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudC5oICovOyBzZXR0aW5ncyA9
IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTFBQjQ3NEU4MTg0RDQ0RDAwMDUx
QjYyMiAvKiBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCNDc0RTcxODRENDREMDAwNTFC
NjIyIC8qIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMUFCNDc0RUExODRENDUxMzAw
NTFCNjIyIC8qIFdLQnVuZGxlUGFnZVBvbGljeUNsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCNDc0RTkxODRENDUxMzAwNTFCNjIyIC8qIFdL
QnVuZGxlUGFnZVBvbGljeUNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCTFBQjdENENBMTI4OEFBQTcwMENGRDA4QyAvKiBEb3dubG9hZFBy
b3h5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI3
RDRDODEyODhBQUE3MDBDRkQwOEMgLyogRG93bmxvYWRQcm94eS5oICovOyB9OwogCQkxQUI3RDRD
QjEyODhBQUE3MDBDRkQwOEMgLyogRG93bmxvYWRQcm94eS5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI3RDRDOTEyODhBQUE3MDBDRkQwOEMgLyog
RG93bmxvYWRQcm94eS5jcHAgKi87IH07CkBAIC04MzYsNiArODM1LDcgQEAKIAkJM0Y4ODlEMTQx
ODg3NzhDOTAwRkVBREFGIC8qIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGODg5RDEyMTg4Nzc4
QzkwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW0gKi87IH07CiAJ
CTNGODg5RDE1MTg4Nzc4QzkwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDNGODg5
RDEzMTg4Nzc4QzkwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCAq
LzsgfTsKIAkJM0Y4ODlEMTcxODg3ODU5MzAwRkVBREFGIC8qIFdlYlZpZGVvRnVsbHNjcmVlbk1h
bmFnZXIubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
Rjg4OUQwRDE4ODc2OTlDMDBGRUFEQUYgLyogV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5tbSAq
LzsgfTsKKwkJNDZDNkQxQzExQTgwMzY4NDAwNEFDRjk4IC8qIFdLRGlhZ25vc3RpY0xvZ2dpbmdS
ZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA0NkM2RDFDMDFBODAzNjg0MDA0QUNGOTggLyogV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5
cGUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQk0
QTNDQzE4QTE5QjA2M0U3MDBEMTRBRUYgLyogVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5h
Z2VyUHJveHkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gNEE0MTBGMzkxOUFGN0IwNDAwMkVCQUI1IC8qIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0
TWFuYWdlclByb3h5LmNwcCAqLzsgfTsKIAkJNEEzQ0MxOEIxOUIwNjQwRjAwRDE0QUVGIC8qIFVz
ZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlclByb3h5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0QTQxMEYzQTE5QUY3QjA0MDAyRUJBQjUgLyog
VXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3RNYW5hZ2VyUHJveHkuaCAqLzsgfTsKIAkJNEEzQ0Mx
OEMxOUIwNjQxNTAwRDE0QUVGIC8qIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNEE0MTBGM0Ix
OUFGN0IwNDAwMkVCQUI1IC8qIFVzZXJNZWRpYVBlcm1pc3Npb25SZXF1ZXN0UHJveHkuY3BwICov
OyB9OwpAQCAtMTE2Myw3ICsxMTYzLDYgQEAKIAkJODM3MkRCMjUxQTY3NEM4RjAwQzY5N0M1IC8q
IFdLUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzcyREIyNDFBNjc0QzhGMDBDNjk3QzUgLyogV0tQYWdl
RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQk4MzcyREIyODFBNjc1NjI4MDBDNjk3QzUgLyogV2ViUGFnZURp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDgzNzJEQjI2MUE2NzU2MjgwMEM2OTdDNSAvKiBXZWJQYWdlRGlhZ25v
c3RpY0xvZ2dpbmdDbGllbnQuY3BwICovOyB9OwogCQk4MzcyREIyOTFBNjc1NjI4MDBDNjk3QzUg
LyogV2ViUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4MzcyREIyNzFBNjc1NjI4MDBDNjk3QzUgLyogV2Vi
UGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi87IH07Ci0JCTgzNzJEQjJGMUE2NzdENEEw
MEM2OTdDNSAvKiBXS0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODM3MkRCMkUxQTY3N0Q0QTAwQzY5N0M1
IC8qIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJODM4OTFCNjMxQTY4QjM0MjAwMzBGMzg2IC8q
IEFQSURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4Mzg5MUI2MjFBNjhCMzQyMDAzMEYzODYgLyogQVBJRGlhZ25v
c3RpY0xvZ2dpbmdDbGllbnQuaCAqLzsgfTsKIAkJODM4OTFCNjkxQTY4QkVCQzAwMzBGMzg2IC8q
IF9XS0RpYWdub3N0aWNMb2dnaW5nRGVsZWdhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDgzODkxQjY4MUE2OEJFQkMwMDMwRjM4NiAvKiBfV0tEaWFn
bm9zdGljTG9nZ2luZ0RlbGVnYXRlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKIAkJODM4OTFCNkMxQTY4QzMwQjAwMzBGMzg2IC8qIERpYWdub3N0aWNM
b2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSA4Mzg5MUI2QTFBNjhDMzBCMDAzMEYzODYgLyogRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQu
aCAqLzsgfTsKQEAgLTE2NjYsNyArMTY2NSw2IEBACiAJCUNEMTlBMjZFMUExM0U4MzQwMDhENjUw
RSAvKiBXZWJEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQ0QxOUEyNkExQTEzRTgyMTAwOEQ2NTBFIC8qIFdlYkRp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi87IH07CiAJCUNENUM2NkEwMTM0QjlEMzgwMDRGRTJB
OCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENUM2NjlFMTM0QjlEMzYwMDRGRTJB
OCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmNwcCAqLzsgfTsKIAkJQ0Q1
QzY2QTExMzRCOUQzODAwNEZFMkE4IC8qIEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGll
bnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENUM2
NjlGMTM0QjlEMzcwMDRGRTJBOCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50
LmggKi87IH07Ci0JCUNENjdEMzBFMTVDMDhGOUEwMDg0M0FERiAvKiBJbmplY3RlZEJ1bmRsZVBh
Z2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBDRDY3RDMwODE1QzA3QkUwMDA4NDNBREYgLyogSW5qZWN0ZWRC
dW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwICovOyB9OwogCQlDRDZGNzVGNDEz
MUI2NkQwMDBENkIyMUUgLyogV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eS5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDRDczQkEzRTEzMUEyRThBMDBF
RURFRDIgLyogV2ViRnVsbFNjcmVlbk1hbmFnZXJQcm94eS5jcHAgKi87IH07CiAJCUNENzNCQTQ3
MTMxQUNDOUEwMEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5TWVzc2FnZVJlY2Vp
dmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENE
NzNCQTQ1MTMxQUNDODgwMEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdlclByb3h5TWVzc2Fn
ZVJlY2VpdmVyLmNwcCAqLzsgfTsKIAkJQ0Q3M0JBNEUxMzFBQ0RCNzAwRUVERUQyIC8qIFdlYkZ1
bGxTY3JlZW5NYW5hZ2VyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IENENzNCQTQ4MTMxQUNEOEUwMEVFREVEMiAvKiBXZWJG
dWxsU2NyZWVuTWFuYWdlck1lc3NhZ2VSZWNlaXZlci5jcHAgKi87IH07CkBAIC0yNDk4LDcgKzI0
OTYsNiBAQAogCQkxQUI0NzRFMTE4NEQ0NDgwMDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlRm9ybUNs
aWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZVBhZ2VGb3Jt
Q2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjQ3NEUzMTg0RDQ0OTgw
MDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI0NzRFNTE4NEQ0NEI0MDA1MUI2MjIgLyogV0tC
dW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBXS0J1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTFBQjQ3NEU3MTg0RDQ0RDAwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS0J1
bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxQUI0NzRFOTE4NEQ0NTEzMDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlUG9saWN5Q2xp
ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdLQnVuZGxlUGFnZVBvbGlj
eUNsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUI3RDRDODEyODhBQUE3
MDBDRkQwOEMgLyogRG93bmxvYWRQcm94eS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBEb3dubG9hZFByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjdE
NEM5MTI4OEFBQTcwMENGRDA4QyAvKiBEb3dubG9hZFByb3h5LmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERvd25sb2FkUHJveHkuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjk4MSw2ICsyOTc4LDcgQEAKIAkJM0Y4ODlEMTIxODg3NzhDOTAwRkVB
REFGIC8qIFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgbmFtZSA9IFdlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5t
bTsgcGF0aCA9IGlvcy9XZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTNGODg5RDEzMTg4Nzc4QzkwMEZFQURBRiAvKiBXZWJWaWRl
b0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lmg7IHBhdGggPSBpb3MvV2ViVmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTNG
ODg5RDE2MTg4NzdBMjQwMEZFQURBRiAvKiBXZWJWaWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJveHku
bWVzc2FnZXMuaW4gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBuYW1lID0gV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlclByb3h5Lm1lc3NhZ2Vz
LmluOyBwYXRoID0gaW9zL1dlYlZpZGVvRnVsbHNjcmVlbk1hbmFnZXJQcm94eS5tZXNzYWdlcy5p
bjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNDZDNkQxQzAxQTgwMzY4NDAwNEFDRjk4
IC8qIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTRBNDEwRjM1MTlBRjdBQzMwMDJFQkFCNSAvKiBXS1VzZXJNZWRp
YVBlcm1pc3Npb25SZXF1ZXN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFdLVXNlck1lZGlhUGVybWlzc2lvblJlcXVlc3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk0QTQxMEYzNjE5QUY3QUMzMDAyRUJBQjUgLyogV0tVc2VyTWVkaWFQZXJtaXNz
aW9uUmVxdWVzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXS1VzZXJNZWRp
YVBlcm1pc3Npb25SZXF1ZXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTRBNDEw
RjM5MTlBRjdCMDQwMDJFQkFCNSAvKiBVc2VyTWVkaWFQZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQ
cm94eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBVc2VyTWVkaWFQ
ZXJtaXNzaW9uUmVxdWVzdE1hbmFnZXJQcm94eS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC0zMzQ3LDcgKzMzNDUsNiBAQAogCQk4MzcyREIyNDFBNjc0QzhGMDBDNjk3QzUgLyog
V0tQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gV0tQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODM3MkRCMjYxQTY3NTYyODAwQzY5N0M1IC8qIFdlYlBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBXZWJQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk4MzcyREIyNzFBNjc1NjI4MDBDNjk3QzUgLyogV2ViUGFnZURpYWdub3N0aWNM
b2dnaW5nQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYlBhZ2VE
aWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk4
MzcyREIyRTFBNjc3RDRBMDBDNjk3QzUgLyogV0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tEaWFnbm9zdGljTG9nZ2luZ1Jl
c3VsdFR5cGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODM4OTFCNjIxQTY4QjM0
MjAwMzBGMzg2IC8qIEFQSURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEFQSURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTgzODkxQjY4MUE2OEJFQkMwMDMwRjM4NiAvKiBfV0tEaWFn
bm9zdGljTG9nZ2luZ0RlbGVnYXRlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IF9XS0RpYWdub3N0aWNMb2dnaW5nRGVsZWdhdGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJODM4OTFCNkExQTY4QzMwQjAwMzBGMzg2IC8qIERpYWdub3N0aWNMb2dnaW5nQ2xpZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERpYWdub3N0aWNMb2dnaW5nQ2xp
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0zODgyLDggKzM4NzksNiBAQAog
CQlDRDE5QTI2QTFBMTNFODIxMDA4RDY1MEUgLyogV2ViRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV2ViRGlhZ25vc3RpY0xvZ2dpbmdD
bGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q1QzY2OUUxMzRCOUQzNjAw
NEZFMkE4IC8qIEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVl
bkNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNENUM2NjlGMTM0QjlE
MzcwMDRGRTJBOCAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5D
bGllbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQ0Q2N0QzMDgxNUMwN0JFMDAw
ODQzQURGIC8qIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEluamVjdGVkQnVuZGxlUGFnZURp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJ
Q0Q2N0QzMDkxNUMwN0JFMDAwODQzQURGIC8qIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNM
b2dnaW5nQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluamVjdGVk
QnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUNENzNCQTM3MTMxQTI5RkUwMEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBXZWJGdWxsU2NyZWVu
TWFuYWdlci5jcHA7IHBhdGggPSBGdWxsU2NyZWVuL1dlYkZ1bGxTY3JlZW5NYW5hZ2VyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQ0Q3M0JBMzgxMzFBMjlGRTAwRUVERUQyIC8q
IFdlYkZ1bGxTY3JlZW5NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9
IFdlYkZ1bGxTY3JlZW5NYW5hZ2VyLmg7IHBhdGggPSBGdWxsU2NyZWVuL1dlYkZ1bGxTY3JlZW5N
YW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUNENzNCQTM5MTMxQTI5RkUw
MEVFREVEMiAvKiBXZWJGdWxsU2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRl
eHQ7IG5hbWUgPSBXZWJGdWxsU2NyZWVuTWFuYWdlci5tZXNzYWdlcy5pbjsgcGF0aCA9IEZ1bGxT
Y3JlZW4vV2ViRnVsbFNjcmVlbk1hbmFnZXIubWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC02Mjc5LDYgKzYyNzQsNyBAQAogCQkJCTUxOEFDRjEwMTJCMDE1RjgwMEIw
NEI4MyAvKiBXS0NyZWRlbnRpYWxUeXBlcy5oICovLAogCQkJCUY2MkE3NjVGMTJCMUFCRUQwMDA1
RjFCNiAvKiBXS0RhdGFiYXNlTWFuYWdlci5jcHAgKi8sCiAJCQkJRjYyQTc2NjAxMkIxQUJFRDAw
MDVGMUI2IC8qIFdLRGF0YWJhc2VNYW5hZ2VyLmggKi8sCisJCQkJNDZDNkQxQzAxQTgwMzY4NDAw
NEFDRjk4IC8qIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggKi8sCiAJCQkJMUFCN0Q3
OEMxMjg4Q0Q5QTAwQ0ZEMDhDIC8qIFdLRG93bmxvYWQuY3BwICovLAogCQkJCTFBQjdENzhCMTI4
OENEOUEwMENGRDA4QyAvKiBXS0Rvd25sb2FkLmggKi8sCiAJCQkJQkNFNDY5NTcxMjE0RURGNDAw
MEI5OEVCIC8qIFdLRm9ybVN1Ym1pc3Npb25MaXN0ZW5lci5jcHAgKi8sCkBAIC02NTIxLDggKzY1
MTcsNiBAQAogCQkJCUJDODE0N0QzMTJGNjZEMzEwMDdCMkMzMiAvKiBJbmplY3RlZEJ1bmRsZU5h
dmlnYXRpb25BY3Rpb24uaCAqLywKIAkJCQk1MTI5MzVFMTEyODhEOTc4MDBBNEI2OTUgLyogSW5q
ZWN0ZWRCdW5kbGVQYWdlQ29udGV4dE1lbnVDbGllbnQuY3BwICovLAogCQkJCTUxMjkzNUUyMTI4
OEQ5NzgwMEE0QjY5NSAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oICov
LAotCQkJCUNENjdEMzA4MTVDMDdCRTAwMDg0M0FERiAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5jcHAgKi8sCi0JCQkJQ0Q2N0QzMDkxNUMwN0JFMDAwODQzQURG
IC8qIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggKi8sCiAJCQkJ
RTFFRTUzRTYxMUY4Q0ZGQjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVu
dC5jcHAgKi8sCiAJCQkJRTFFRTUzREMxMUY4Q0Y5RjAwQ0NCRUU0IC8qIEluamVjdGVkQnVuZGxl
UGFnZUVkaXRvckNsaWVudC5oICovLAogCQkJCUJDMTRFMTA3MTIwQjkwNUUwMDgyNkMwQyAvKiBJ
bmplY3RlZEJ1bmRsZVBhZ2VGb3JtQ2xpZW50LmNwcCAqLywKQEAgLTY1OTMsNyArNjU4Nyw2IEBA
CiAJCQkJN0NGNDdGRjQxNzI3NUI3MTAwOEFDQjkxIC8qIFdLQnVuZGxlUGFnZUJhbm5lci5jcHAg
Ki8sCiAJCQkJN0NGNDdGRjUxNzI3NUI3MTAwOEFDQjkxIC8qIFdLQnVuZGxlUGFnZUJhbm5lci5o
ICovLAogCQkJCTFBQjQ3NEUzMTg0RDQ0OTgwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0
TWVudUNsaWVudC5oICovLAotCQkJCTFBQjQ3NEU3MTg0RDQ0RDAwMDUxQjYyMiAvKiBXS0J1bmRs
ZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oICovLAogCQkJCTFBQjQ3NERGMTg0RDQ0NkEw
MDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VFZGl0b3JDbGllbnQuaCAqLywKIAkJCQkxQUI0NzRFMTE4
NEQ0NDgwMDA1MUI2MjIgLyogV0tCdW5kbGVQYWdlRm9ybUNsaWVudC5oICovLAogCQkJCTFBQjQ3
NEU1MTg0RDQ0QjQwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpZW50LmggKi8s
CkBAIC03MDQ4LDcgKzcwNDEsNiBAQAogCQkJCUJDNDA3NURDMTI0RkYwMjcwMDY4RjIwQSAvKiBX
S0RhdGEuaCAqLywKIAkJCQkzNzdFQUQ0NDE3RTJDNTFBMDAyRDE5M0QgLyogV0tEZWNsYXJhdGlv
blNwZWNpZmllcnMuaCAqLywKIAkJCQkxQUZGNDhGRTE4MzNERTc4MDA5QUIxNUEgLyogV0tEZXBy
ZWNhdGVkRnVuY3Rpb25zLmNwcCAqLywKLQkJCQk4MzcyREIyRTFBNjc3RDRBMDBDNjk3QzUgLyog
V0tEaWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCAqLywKIAkJCQlCQzQwNzVERDEyNEZGMDI3
MDA2OEYyMEEgLyogV0tEaWN0aW9uYXJ5LmNwcCAqLywKIAkJCQlCQzQwNzVERTEyNEZGMDI3MDA2
OEYyMEEgLyogV0tEaWN0aW9uYXJ5LmggKi8sCiAJCQkJQkM0MDc1REYxMjRGRjAyNzAwNjhGMjBB
IC8qIFdLRXJyb3JSZWYuY3BwICovLApAQCAtODA4Miw5ICs4MDc0LDcgQEAKIAkJCQlCQzIwNTI4
MTExQzk0Mjg0MDA4RjMzNzUgLyogV0tCdW5kbGVQYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQk3
Q0Y0N0ZGNzE3Mjc1QjcxMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdlQmFubmVyLmggaW4gSGVhZGVy
cyAqLywKIAkJCQk3Q0Y0N0ZGRjE3Mjc2QUUzMDA4QUNCOTEgLyogV0tCdW5kbGVQYWdlQmFubmVy
TWFjLmggaW4gSGVhZGVycyAqLywKLQkJCQk4MzcyREIyRjFBNjc3RDRBMDBDNjk3QzUgLyogV0tE
aWFnbm9zdGljTG9nZ2luZ1Jlc3VsdFR5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBQjQ3NEU0
MTg0RDQ0OTgwMDUxQjYyMiAvKiBXS0J1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJMUFCNDc0RTgxODRENDREMDAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZURp
YWdub3N0aWNMb2dnaW5nQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk3Qzg5RDJCQzFBNkIw
RjVCMDAzQTVGREUgLyogX1dLVXNlckNvbnRlbnRGaWx0ZXJJbnRlcm5hbC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMUFCNDc0RTAxODRENDQ2QTAwNTFCNjIyIC8qIFdLQnVuZGxlUGFnZUVkaXRvckNs
aWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFCNDc0RTIxODRENDQ4MDAwNTFCNjIyIC8qIFdL
QnVuZGxlUGFnZUZvcm1DbGllbnQuaCBpbiBIZWFkZXJzICovLApAQCAtODEyNyw2ICs4MTE3LDcg
QEAKIAkJCQlCQzQwNzVGQTEyNEZGMDI3MDA2OEYyMEEgLyogV0tEaWN0aW9uYXJ5LmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCQzAxN0QwNzE2MjYwRkY0MDA3MDU0RjUgLyogV0tET01Eb2N1bWVudC5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQkMwMTdEMDkxNjI2MEZGNDAwNzA1NEY1IC8qIFdLRE9NRWxl
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJNDZDNkQxQzExQTgwMzY4NDAwNEFDRjk4IC8qIFdL
RGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzAxN0Qw
QjE2MjYwRkY0MDA3MDU0RjUgLyogV0tET01JbnRlcm5hbHMuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDMDE3RDBEMTYyNjBGRjQwMDcwNTRGNSAvKiBXS0RPTU5vZGUuaCBpbiBIZWFkZXJzICovLAog
CQkJCUJDNUQyNEMyMTZDRDcwNkQwMDdENTQ2MSAvKiBXS0RPTU5vZGVQcml2YXRlLmggaW4gSGVh
ZGVycyAqLywKQEAgLTkzODMsNyArOTM3NCw2IEBACiAJCQkJQkM4MTQ3RDYxMkY2NkQzMTAwN0Iy
QzMyIC8qIEluamVjdGVkQnVuZGxlTmF2aWdhdGlvbkFjdGlvbi5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQzRCRUVBQzEyMEEwQTVGMDBGQkEwQzcgLyogSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxMjkzNUUzMTI4OEQ5NzgwMEE0QjY5NSAvKiBJbmpl
Y3RlZEJ1bmRsZVBhZ2VDb250ZXh0TWVudUNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKLQkJCQlD
RDY3RDMwRTE1QzA4RjlBMDA4NDNBREYgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xv
Z2dpbmdDbGllbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRTFFRTUzRTcxMUY4Q0ZGQjAwQ0NC
RUU0IC8qIEluamVjdGVkQnVuZGxlUGFnZUVkaXRvckNsaWVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCQzE0RTEwOTEyMEI5MDVFMDA4MjZDMEMgLyogSW5qZWN0ZWRCdW5kbGVQYWdlRm9ybUNs
aWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDRDVDNjZBMDEzNEI5RDM4MDA0RkUyQTggLyog
SW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2Mv
V0tCdW5kbGVQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvQVBJL2MvV0tCdW5kbGVQYWdlLmNwcAppbmRleCBhZjQ4MzUzYmFjMmVmYTAwYzExMGRiOTNm
YmExMmQ0ODEyNDZhMDdiLi43ZGU0YWE4MTA3MTZjNTI0NzNhNGE2NGQ4OWNiMWQ2YzkwYjIwNDY2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQ
SS9jL1dLQnVuZGxlUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Jbmpl
Y3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2UuY3BwCkBAIC0xNTQsMTEgKzE1NCw2IEBAIHZv
aWQgV0tCdW5kbGVQYWdlRGlkRXhpdEZ1bGxTY3JlZW4oV0tCdW5kbGVQYWdlUmVmIHBhZ2VSZWYp
CiAjZW5kaWYKIH0KIAotdm9pZCBXS0J1bmRsZVBhZ2VTZXREaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dChXS0J1bmRsZVBhZ2VSZWYgcGFnZVJlZiwgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdD
bGllbnRCYXNlKiBjbGllbnQpCi17Ci0gICAgdG9JbXBsKHBhZ2VSZWYpLT5pbml0aWFsaXplSW5q
ZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChjbGllbnQpOwotfQotCiBXS0J1bmRs
ZVBhZ2VHcm91cFJlZiBXS0J1bmRsZVBhZ2VHZXRQYWdlR3JvdXAoV0tCdW5kbGVQYWdlUmVmIHBh
Z2VSZWYpCiB7CiAgICAgcmV0dXJuIHRvQVBJKHRvSW1wbChwYWdlUmVmKS0+cGFnZUdyb3VwKCkp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZVBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2MvV0tCdW5kbGVQYWdlLmgKaW5kZXggNTliZDM0OGMxYjI5YWRjNzEwOTkwODFl
NmU2OGI2OTY4NGRiYTRiZC4uNGJmNzBjMGFhZTljYTRlYWVmNTIxNDkxM2FhMmYyNjg4NjZlMWYx
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9B
UEkvYy9XS0J1bmRsZVBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlUGFnZS5oCkBAIC0yOSw3ICsyOSw2IEBACiAjaW5jbHVk
ZSA8SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdC5oPgogI2luY2x1ZGUgPFdlYktpdC9XS0Jhc2Uu
aD4KICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlQ29udGV4dE1lbnVDbGllbnQuaD4KLSNp
bmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaD4KICNp
bmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQYWdlRWRpdG9yQ2xpZW50Lmg+CiAjaW5jbHVkZSA8V2Vi
S2l0L1dLQnVuZGxlUGFnZUZvcm1DbGllbnQuaD4KICNpbmNsdWRlIDxXZWJLaXQvV0tCdW5kbGVQ
YWdlRnVsbFNjcmVlbkNsaWVudC5oPgpAQCAtNjUsNyArNjQsNiBAQCBXS19FWFBPUlQgdm9pZCBX
S0J1bmRsZVBhZ2VTZXRSZXNvdXJjZUxvYWRDbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdL
QnVuZGxlUAogV0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdlU2V0UG9saWN5Q2xpZW50KFdLQnVu
ZGxlUGFnZVJlZiBwYWdlLCBXS0J1bmRsZVBhZ2VQb2xpY3lDbGllbnRCYXNlKiBjbGllbnQpOwog
V0tfRVhQT1JUIHZvaWQgV0tCdW5kbGVQYWdlU2V0VUlDbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBh
Z2UsIFdLQnVuZGxlUGFnZVVJQ2xpZW50QmFzZSogY2xpZW50KTsKIFdLX0VYUE9SVCB2b2lkIFdL
QnVuZGxlUGFnZVNldEZ1bGxTY3JlZW5DbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLQnVu
ZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnRCYXNlKiBjbGllbnQpOwotV0tfRVhQT1JUIHZvaWQgV0tC
dW5kbGVQYWdlU2V0RGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQoV0tCdW5kbGVQYWdlUmVmIHBhZ2Us
IFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50QmFzZSogY2xpZW50KTsKIAogV0tf
RVhQT1JUIFdLQnVuZGxlUGFnZUdyb3VwUmVmIFdLQnVuZGxlUGFnZUdldFBhZ2VHcm91cChXS0J1
bmRsZVBhZ2VSZWYgcGFnZSk7CiBXS19FWFBPUlQgV0tCdW5kbGVGcmFtZVJlZiBXS0J1bmRsZVBh
Z2VHZXRNYWluRnJhbWUoV0tCdW5kbGVQYWdlUmVmIHBhZ2UpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudC5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5oCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0Njc5MmQ1ODJkOTMwMDhhYjBmNTg4NzlmZmY3MjNk
YTcwNGIwNTNkLi4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBh
L1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVQ
YWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQuaAorKysgL2Rldi9udWxsCkBAIC0xLDc1ICswLDAg
QEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4g
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAg
ICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUg
ZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUg
SU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAotICog
VEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0gKiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICogQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xp
ZW50X2gKLSNkZWZpbmUgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRfaAotCi0j
aW5jbHVkZSA8V2ViS2l0L1dLQmFzZS5oPgotI2luY2x1ZGUgPFdlYktpdC9XS0RpYWdub3N0aWNM
b2dnaW5nUmVzdWx0VHlwZS5oPgotCi10eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVz
c2FnZSwgV0tTdHJpbmdSZWYgZGVzY3JpcHRpb24sIFdLU3RyaW5nUmVmIHN1Y2Nlc3MsIGNvbnN0
IHZvaWQqIGNsaWVudEluZm8pOwotdHlwZWRlZiB2b2lkICgqV0tCdW5kbGVQYWdlTG9nRGlhZ25v
c3RpY01lc3NhZ2VDYWxsYmFjaykoV0tCdW5kbGVQYWdlUmVmIHBhZ2UsIFdLU3RyaW5nUmVmIG1l
c3NhZ2UsIFdLU3RyaW5nUmVmIGRlc2NyaXB0aW9uLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsK
LXR5cGVkZWYgdm9pZCAoKldLQnVuZGxlUGFnZUxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3Vs
dENhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFnZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tT
dHJpbmdSZWYgZGVzY3JpcHRpb24sIFdLRGlhZ25vc3RpY0xvZ2dpbmdSZXN1bHRUeXBlIHJlc3Vs
dCwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7Ci10eXBlZGVmIHZvaWQgKCpXS0J1bmRsZVBhZ2VM
b2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZUNhbGxiYWNrKShXS0J1bmRsZVBhZ2VSZWYgcGFn
ZSwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tTdHJpbmdSZWYgZGVzY3JpcHRpb24sIFdLU3RyaW5n
UmVmIHZhbHVlLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKLQotdHlwZWRlZiBzdHJ1Y3QgV0tC
dW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRCYXNlIHsKLSAgICBpbnQgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZl
cnNpb247Ci0gICAgY29uc3Qgdm9pZCAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBjbGllbnRJbmZvOwotfSBXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudEJhc2U7Ci0KLXR5cGVkZWYgc3RydWN0IFdLQnVuZGxlUGFnZURpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50VjAgewotICAgIFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5n
Q2xpZW50QmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFzZTsKLQotICAgIC8vIFZl
cnNpb24gMC4KLSAgICBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NhbGxiYWNrICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlOwotfSBXS0J1bmRs
ZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudFYwOwotCi10eXBlZGVmIHN0cnVjdCBXS0J1bmRs
ZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudFYxIHsKLSAgICBXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhc2U7Ci0K
LSAgICAvLyBWZXJzaW9uIDAuCi0gICAgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDYWxs
YmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZURl
cHJlY2F0ZWQ7Ci0KLSAgICAvLyBWZXJzaW9uIDEuCi0gICAgV0tCdW5kbGVQYWdlTG9nRGlhZ25v
c3RpY01lc3NhZ2VDYWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9z
dGljTWVzc2FnZTsKLSAgICBXS0J1bmRsZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhSZXN1
bHRDYWxsYmFjayAgICAgICAgICAgICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3Vs
dDsKLSAgICBXS0J1bmRsZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZUNhbGxiYWNr
ICAgICAgICAgICAgICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlOwotfSBXS0J1
bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudFYxOwotCi1lbnVtIHsga1dLQnVuZGxlUGFn
ZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Q3VycmVudFZlcnNpb24gV0tfRU5VTV9ERVBSRUNBVEVE
KCJVc2UgYW4gZXhwbGljaXQgdmVyc2lvbiBudW1iZXIgaW5zdGVhZCIpID0gMSB9OwotdHlwZWRl
ZiBzdHJ1Y3QgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQgewotICAgIGludCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgdmVyc2lvbjsKLSAgICBjb25zdCB2b2lkICogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsaWVudEluZm87Ci0KLSAgICAvLyBWZXJz
aW9uIDAuCi0gICAgV0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDYWxsYmFjayAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQ7Ci0K
LSAgICAvLyBWZXJzaW9uIDEuCi0gICAgV0tCdW5kbGVQYWdlTG9nRGlhZ25vc3RpY01lc3NhZ2VD
YWxsYmFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2dEaWFnbm9zdGljTWVzc2FnZTsK
LSAgICBXS0J1bmRsZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhSZXN1bHRDYWxsYmFjayAg
ICAgICAgICAgICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFJlc3VsdDsKLSAgICBXS0J1
bmRsZVBhZ2VMb2dEaWFnbm9zdGljTWVzc2FnZVdpdGhWYWx1ZUNhbGxiYWNrICAgICAgICAgICAg
ICAgICAgIGxvZ0RpYWdub3N0aWNNZXNzYWdlV2l0aFZhbHVlOwotfSBXS0J1bmRsZVBhZ2VEaWFn
bm9zdGljTG9nZ2luZ0NsaWVudCBXS19DX0RFUFJFQ0FURUQoIlVzZSBhbiBleHBsaWNpdCB2ZXJz
aW9uZWQgc3RydWN0IGluc3RlYWQiKTsKLQotI2VuZGlmIC8vIFdLQnVuZGxlUGFnZURpYWdub3N0
aWNMb2dnaW5nQ2xpZW50X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
SW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1
bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDQ0M2YwYzZiMjQ4NWNkZGJiNTdhOWUyYTNhZjM1MWQ0NmIwNzBmNWIuLjAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9n
Z2luZ0NsaWVudC5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi0vKgotICogQ29w
eXJpZ2h0IChDKSAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBD
T05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJS
QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVEIFdB
UlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK
LSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4g
T1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKLSAq
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0g
KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8K
LQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZURpYWdu
b3N0aWNMb2dnaW5nQ2xpZW50LmgiCi0KLSNpbmNsdWRlICJXS0FQSUNhc3QuaCIKLSNpbmNsdWRl
ICJXS0J1bmRsZUFQSUNhc3QuaCIKLSNpbmNsdWRlICJXZWJQYWdlLmgiCi0KLW5hbWVzcGFjZSBX
ZWJLaXQgewotCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50
Ojpsb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0ZWQoV2ViUGFnZSogcGFnZSwgY29uc3QgU3Ry
aW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBjb25zdCBTdHJpbmcmIHN1
Y2Nlc3MpCi17Ci0gICAgaWYgKCFtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZURlcHJlY2F0
ZWQpCi0gICAgICAgIHJldHVybjsKLSAgICBtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZURl
cHJlY2F0ZWQodG9BUEkocGFnZSksIHRvQVBJKG1lc3NhZ2UuaW1wbCgpKSwgdG9BUEkoZGVzY3Jp
cHRpb24uaW1wbCgpKSwgdG9BUEkoc3VjY2Vzcy5pbXBsKCkpLCBtX2NsaWVudC5iYXNlLmNsaWVu
dEluZm8pOwotfQotCi12b2lkIEluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xp
ZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZShXZWJQYWdlKiBwYWdlLCBjb25zdCBTdHJpbmcmIG1l
c3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24pCi17Ci0gICAgaWYgKCFtX2NsaWVudC5s
b2dEaWFnbm9zdGljTWVzc2FnZSkKLSAgICAgICAgcmV0dXJuOwotICAgIG1fY2xpZW50LmxvZ0Rp
YWdub3N0aWNNZXNzYWdlKHRvQVBJKHBhZ2UpLCB0b0FQSShtZXNzYWdlLmltcGwoKSksIHRvQVBJ
KGRlc2NyaXB0aW9uLmltcGwoKSksIG1fY2xpZW50LmJhc2UuY2xpZW50SW5mbyk7Ci19Ci0KLXZv
aWQgSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnQ6OmxvZ0RpYWdub3N0
aWNNZXNzYWdlV2l0aFJlc3VsdChXZWJQYWdlKiBwYWdlLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2Us
IGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdlYkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVz
dWx0VHlwZSByZXN1bHQpCi17Ci0gICAgaWYgKCFtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2Fn
ZVdpdGhSZXN1bHQpCi0gICAgICAgIHJldHVybjsKLSAgICBtX2NsaWVudC5sb2dEaWFnbm9zdGlj
TWVzc2FnZVdpdGhSZXN1bHQodG9BUEkocGFnZSksIHRvQVBJKG1lc3NhZ2UuaW1wbCgpKSwgdG9B
UEkoZGVzY3JpcHRpb24uaW1wbCgpKSwgdG9BUEkocmVzdWx0KSwgbV9jbGllbnQuYmFzZS5jbGll
bnRJbmZvKTsKLX0KLQotdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudDo6bG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoVmFsdWUoV2ViUGFnZSogcGFnZSwgY29uc3Qg
U3RyaW5nJiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBjb25zdCBTdHJpbmcm
IHZhbHVlKQotewotICAgIGlmICghbV9jbGllbnQubG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoVmFs
dWUpCi0gICAgICAgIHJldHVybjsKLSAgICBtX2NsaWVudC5sb2dEaWFnbm9zdGljTWVzc2FnZVdp
dGhWYWx1ZSh0b0FQSShwYWdlKSwgdG9BUEkobWVzc2FnZS5pbXBsKCkpLCB0b0FQSShkZXNjcmlw
dGlvbi5pbXBsKCkpLCB0b0FQSSh2YWx1ZS5pbXBsKCkpLCBtX2NsaWVudC5iYXNlLmNsaWVudElu
Zm8pOwotfQotCi19CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFn
ZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDllZGFhN2M3NjgzZDZiMTVjNDc2NWIzMDQ2YzBlYTU2ZGY5ZTVjZWUuLjAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVu
dC5oCisrKyAvZGV2L251bGwKQEAgLTEsNTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxMiBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JT
IGBgQVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9G
IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NF
IEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05U
UklCVVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U
QUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5D
TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRF
IEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwg
T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJ
TiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYg
SW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGllbnRfaAotI2RlZmluZSBJbmpl
Y3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudF9oCi0KLSNpbmNsdWRlICJBUElD
bGllbnQuaCIKLSNpbmNsdWRlICJXS0J1bmRsZVBhZ2UuaCIKLSNpbmNsdWRlIDxKYXZhU2NyaXB0
Q29yZS9KU0Jhc2UuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0RpYWdub3N0aWNMb2dnaW5nUmVzdWx0
VHlwZS5oPgotI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+Ci0KLW5hbWVzcGFjZSBBUEkgewotdGVt
cGxhdGU8PiBzdHJ1Y3QgQ2xpZW50VHJhaXRzPFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5n
Q2xpZW50QmFzZT4gewotICAgIHR5cGVkZWYgc3RkOjp0dXBsZTxXS0J1bmRsZVBhZ2VEaWFnbm9z
dGljTG9nZ2luZ0NsaWVudFYwLCBXS0J1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudFYx
PiBWZXJzaW9uczsKLX07Ci19Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBJbmplY3Rl
ZEJ1bmRsZUhpdFRlc3RSZXN1bHQ7Ci1jbGFzcyBXZWJDb250ZXh0TWVudUl0ZW1EYXRhOwotY2xh
c3MgV2ViUGFnZTsKLQotY2xhc3MgSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdD
bGllbnQgOiBwdWJsaWMgQVBJOjpDbGllbnQ8V0tCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdD
bGllbnRCYXNlPiB7Ci1wdWJsaWM6Ci0gICAgdm9pZCBsb2dEaWFnbm9zdGljTWVzc2FnZURlcHJl
Y2F0ZWQoV2ViUGFnZSosIGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBkZXNj
cmlwdGlvbiwgY29uc3QgU3RyaW5nJiBzdWNjZXNzKTsKLSAgICB2b2lkIGxvZ0RpYWdub3N0aWNN
ZXNzYWdlKFdlYlBhZ2UqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVz
Y3JpcHRpb24pOwotICAgIHZvaWQgbG9nRGlhZ25vc3RpY01lc3NhZ2VXaXRoUmVzdWx0KFdlYlBh
Z2UqLCBjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFN0cmluZyYgZGVzY3JpcHRpb24sIFdl
YkNvcmU6OkRpYWdub3N0aWNMb2dnaW5nUmVzdWx0VHlwZSk7Ci0gICAgdm9pZCBsb2dEaWFnbm9z
dGljTWVzc2FnZVdpdGhWYWx1ZShXZWJQYWdlKiwgY29uc3QgU3RyaW5nJiBtZXNzYWdlLCBjb25z
dCBTdHJpbmcmIGRlc2NyaXB0aW9uLCBjb25zdCBTdHJpbmcmIHZhbHVlKTsKLX07Ci0KLX0gLy8g
bmFtZXNwYWNlIFdlYktpdAotCi0jZW5kaWYgLy8gSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3Rp
Y0xvZ2dpbmdDbGllbnRfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJEaWFnbm9zdGljTG9nZ2luZ0NsaWVudC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50
LmNwcAppbmRleCAwZWExODIwNzYwOWZiNmJkNzZjNThjYTRkNDhmNTBhYzdmZDQ1YzA2Li43ZGY2
ZDY0M2U3ZGI2NTAwMWZjNjhiZmE4NTBhOWM3NWJkMzgzOGQ0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRpYWdub3N0aWNMb2dnaW5nQ2xp
ZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmNwcApAQCAtNDYsOCArNDYsNiBAQCB2b2lkIFdlYkRp
YWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2FnZShjb25zdCBTdHJpbmcm
IG1lc3NhZ2UsIGNvbgogICAgIGlmICghbV9wYWdlLmNvcmVQYWdlKCktPnNldHRpbmdzKCkuZGlh
Z25vc3RpY0xvZ2dpbmdFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1F
OiBSZW1vdmUgdGhpcyBpbmplY3RlZCBidW5kbGUgQVBJLgotICAgIG1fcGFnZS5pbmplY3RlZEJ1
bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25vc3RpY01lc3NhZ2UoJm1fcGFn
ZSwgbWVzc2FnZSwgZGVzY3JpcHRpb24pOwogICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkxvZ0RpYWdub3N0aWNNZXNzYWdlKG1lc3NhZ2UsIGRlc2NyaXB0aW9uLCBzaG91
bGRTYW1wbGUgPT0gV2ViQ29yZTo6U2hvdWxkU2FtcGxlOjpZZXMpKTsKIH0KIApAQCAtNTYsOCAr
NTQsNiBAQCB2b2lkIFdlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVz
c2FnZVdpdGhSZXN1bHQoY29uc3QgU3RyaW5nJiBtZQogICAgIGlmICghbV9wYWdlLmNvcmVQYWdl
KCktPnNldHRpbmdzKCkuZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkKCkpCiAgICAgICAgIHJldHVy
bjsKIAotICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBpbmplY3RlZCBidW5kbGUgQVBJLgotICAg
IG1fcGFnZS5pbmplY3RlZEJ1bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25v
c3RpY01lc3NhZ2VXaXRoUmVzdWx0KCZtX3BhZ2UsIG1lc3NhZ2UsIGRlc2NyaXB0aW9uLCByZXN1
bHQpOwogICAgIG1fcGFnZS5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkxvZ0RpYWdub3N0
aWNNZXNzYWdlV2l0aFJlc3VsdChtZXNzYWdlLCBkZXNjcmlwdGlvbiwgcmVzdWx0LCBzaG91bGRT
YW1wbGUgPT0gV2ViQ29yZTo6U2hvdWxkU2FtcGxlOjpZZXMpKTsKIH0KIApAQCAtNjYsOCArNjIs
NiBAQCB2b2lkIFdlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50Ojpsb2dEaWFnbm9zdGljTWVzc2Fn
ZVdpdGhWYWx1ZShjb25zdCBTdHJpbmcmIG1lcwogICAgIGlmICghbV9wYWdlLmNvcmVQYWdlKCkt
PnNldHRpbmdzKCkuZGlhZ25vc3RpY0xvZ2dpbmdFbmFibGVkKCkpCiAgICAgICAgIHJldHVybjsK
IAotICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBpbmplY3RlZCBidW5kbGUgQVBJLgotICAgIG1f
cGFnZS5pbmplY3RlZEJ1bmRsZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCkubG9nRGlhZ25vc3Rp
Y01lc3NhZ2VXaXRoVmFsdWUoJm1fcGFnZSwgbWVzc2FnZSwgZGVzY3JpcHRpb24sIHZhbHVlKTsK
ICAgICBtX3BhZ2Uuc2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpMb2dEaWFnbm9zdGljTWVz
c2FnZVdpdGhWYWx1ZShtZXNzYWdlLCBkZXNjcmlwdGlvbiwgdmFsdWUsIHNob3VsZFNhbXBsZSA9
PSBXZWJDb3JlOjpTaG91bGRTYW1wbGU6OlllcykpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKaW5kZXggZDFiOGI3ZGI3ZWQyMGRhZDcwZmQ2
YTg1YjIzYTk4NTNhMjg5MDAxYS4uMzA3NzI0MTEyZDFjN2I4YTAzYjE3ZjZhNGE0NWE0ZmY2NTNj
YjcyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cApAQCAtNjUsNyArNjUsNiBAQAogI2luY2x1ZGUgIldlYkNvbnRleHRNZW51Q2xpZW50LmgiCiAj
aW5jbHVkZSAiV2ViQ29yZUFyZ3VtZW50Q29kZXJzLmgiCiAjaW5jbHVkZSAiV2ViRGF0YWJhc2VQ
cm92aWRlci5oIgotI2luY2x1ZGUgIldlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50LmgiCiAjaW5j
bHVkZSAiV2ViRG9jdW1lbnRMb2FkZXIuaCIKICNpbmNsdWRlICJXZWJEcmFnQ2xpZW50LmgiCiAj
aW5jbHVkZSAiV2ViRWRpdG9yQ2xpZW50LmgiCkBAIC0zNzEsNyArMzcwLDYgQEAgV2ViUGFnZTo6
V2ViUGFnZSh1aW50NjRfdCBwYWdlSUQsIGNvbnN0IFdlYlBhZ2VDcmVhdGlvblBhcmFtZXRlcnMm
IHBhcmFtZXRlcnMpCiAgICAgcGFnZUNvbmZpZ3VyYXRpb24ucGx1Z0luQ2xpZW50ID0gbmV3IFdl
YlBsdWdJbkNsaWVudCgqdGhpcyk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24ubG9hZGVyQ2xpZW50
Rm9yTWFpbkZyYW1lID0gbmV3IFdlYkZyYW1lTG9hZGVyQ2xpZW50OwogICAgIHBhZ2VDb25maWd1
cmF0aW9uLnByb2dyZXNzVHJhY2tlckNsaWVudCA9IG5ldyBXZWJQcm9ncmVzc1RyYWNrZXJDbGll
bnQoKnRoaXMpOwotICAgIHBhZ2VDb25maWd1cmF0aW9uLmRpYWdub3N0aWNMb2dnaW5nQ2xpZW50
ID0gbmV3IFdlYkRpYWdub3N0aWNMb2dnaW5nQ2xpZW50KCp0aGlzKTsKIAogICAgIHBhZ2VDb25m
aWd1cmF0aW9uLmRhdGFiYXNlUHJvdmlkZXIgPSBXZWJEYXRhYmFzZVByb3ZpZGVyOjpnZXRPckNy
ZWF0ZShtX3BhZ2VHcm91cC0+cGFnZUdyb3VwSUQoKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24u
c3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyID0gV2ViU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyOjpn
ZXRPckNyZWF0ZShtX3BhZ2VHcm91cC0+cGFnZUdyb3VwSUQoKSk7CkBAIC02NjUsMTEgKzY2Myw2
IEBAIHZvaWQgV2ViUGFnZTo6aW5pdGlhbGl6ZUluamVjdGVkQnVuZGxlRnVsbFNjcmVlbkNsaWVu
dChXS0J1bmRsZVBhZ2VGdWxsU2NyZWVuQ2xpCiB9CiAjZW5kaWYKIAotdm9pZCBXZWJQYWdlOjpp
bml0aWFsaXplSW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudChXS0J1bmRsZVBh
Z2VEaWFnbm9zdGljTG9nZ2luZ0NsaWVudEJhc2UqIGNsaWVudCkKLXsKLSAgICBtX2xvZ0RpYWdu
b3N0aWNNZXNzYWdlQ2xpZW50LmluaXRpYWxpemUoY2xpZW50KTsKLX0KLQogI2lmIEVOQUJMRShO
RVRTQ0FQRV9QTFVHSU5fQVBJKQogUGFzc1JlZlB0cjxQbHVnaW4+IFdlYlBhZ2U6OmNyZWF0ZVBs
dWdpbihXZWJGcmFtZSogZnJhbWUsIEhUTUxQbHVnSW5FbGVtZW50KiBwbHVnaW5FbGVtZW50LCBj
b25zdCBQbHVnaW46OlBhcmFtZXRlcnMmIHBhcmFtZXRlcnMsIFN0cmluZyYgbmV3TUlNRVR5cGUp
CiB7CkBAIC05NjMsNyArOTU2LDYgQEAgdm9pZCBXZWJQYWdlOjpjbG9zZSgpCiAjaWYgRU5BQkxF
KEZVTExTQ1JFRU5fQVBJKQogICAgIG1fZnVsbFNjcmVlbkNsaWVudC5pbml0aWFsaXplKDApOwog
I2VuZGlmCi0gICAgbV9sb2dEaWFnbm9zdGljTWVzc2FnZUNsaWVudC5pbml0aWFsaXplKDApOwog
CiAgICAgbV9wcmludENvbnRleHQgPSBudWxscHRyOwogICAgIG1fbWFpbkZyYW1lLT5jb3JlRnJh
bWUoKS0+bG9hZGVyKCkuZGV0YWNoRnJvbVBhcmVudCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggNTFjMGVmMjQ0Y2JmMTVlMjc3YzY4NDc3ZDBm
ZjliNDNiY2NmN2U0Ny4uMzA3MGZjNmUxN2ViMjIwZWU1Mjg4NTc5ZmMxZmI3ODQ5NTY2MTFhNCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCkBAIC0zNCw3
ICszNCw2IEBACiAjaW5jbHVkZSAiRmluZENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJHZW9sb2Nh
dGlvblBlcm1pc3Npb25SZXF1ZXN0TWFuYWdlci5oIgogI2luY2x1ZGUgIkltYWdlT3B0aW9ucy5o
IgotI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50Lmgi
CiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlRWRpdG9yQ2xpZW50LmgiCiAjaW5jbHVkZSAi
SW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudC5oIgogI2luY2x1ZGUgIkluamVjdGVk
QnVuZGxlUGFnZUxvYWRlckNsaWVudC5oIgpAQCAtMjkzLDcgKzI5Miw2IEBAIHB1YmxpYzoKICNp
ZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkpCiAgICAgdm9pZCBpbml0aWFsaXplSW5qZWN0ZWRCdW5k
bGVGdWxsU2NyZWVuQ2xpZW50KFdLQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnRCYXNlKik7CiAj
ZW5kaWYKLSAgICB2b2lkIGluaXRpYWxpemVJbmplY3RlZEJ1bmRsZURpYWdub3N0aWNMb2dnaW5n
Q2xpZW50KFdLQnVuZGxlUGFnZURpYWdub3N0aWNMb2dnaW5nQ2xpZW50QmFzZSopOwogCiAjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVVMpCiAgICAgQVBJOjpJbmplY3RlZEJ1bmRsZTo6UGFnZUNvbnRl
eHRNZW51Q2xpZW50JiBpbmplY3RlZEJ1bmRsZUNvbnRleHRNZW51Q2xpZW50KCkgeyByZXR1cm4g
Km1fY29udGV4dE1lbnVDbGllbnQuZ2V0KCk7IH0KQEAgLTMwNCw3ICszMDIsNiBAQCBwdWJsaWM6
CiAgICAgSW5qZWN0ZWRCdW5kbGVQYWdlUG9saWN5Q2xpZW50JiBpbmplY3RlZEJ1bmRsZVBvbGlj
eUNsaWVudCgpIHsgcmV0dXJuIG1fcG9saWN5Q2xpZW50OyB9CiAgICAgSW5qZWN0ZWRCdW5kbGVQ
YWdlUmVzb3VyY2VMb2FkQ2xpZW50JiBpbmplY3RlZEJ1bmRsZVJlc291cmNlTG9hZENsaWVudCgp
IHsgcmV0dXJuIG1fcmVzb3VyY2VMb2FkQ2xpZW50OyB9CiAgICAgQVBJOjpJbmplY3RlZEJ1bmRs
ZTo6UGFnZVVJQ2xpZW50JiBpbmplY3RlZEJ1bmRsZVVJQ2xpZW50KCkgeyByZXR1cm4gKm1fdWlD
bGllbnQuZ2V0KCk7IH0KLSAgICBJbmplY3RlZEJ1bmRsZVBhZ2VEaWFnbm9zdGljTG9nZ2luZ0Ns
aWVudCYgaW5qZWN0ZWRCdW5kbGVEaWFnbm9zdGljTG9nZ2luZ0NsaWVudCgpIHsgcmV0dXJuIG1f
bG9nRGlhZ25vc3RpY01lc3NhZ2VDbGllbnQ7IH0KICNpZiBFTkFCTEUoRlVMTFNDUkVFTl9BUEkp
CiAgICAgSW5qZWN0ZWRCdW5kbGVQYWdlRnVsbFNjcmVlbkNsaWVudCYgaW5qZWN0ZWRCdW5kbGVG
dWxsU2NyZWVuQ2xpZW50KCkgeyByZXR1cm4gbV9mdWxsU2NyZWVuQ2xpZW50OyB9CiAjZW5kaWYK
QEAgLTExOTgsNyArMTE5NSw2IEBAIHByaXZhdGU6CiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJ
KQogICAgIEluamVjdGVkQnVuZGxlUGFnZUZ1bGxTY3JlZW5DbGllbnQgbV9mdWxsU2NyZWVuQ2xp
ZW50OwogI2VuZGlmCi0gICAgSW5qZWN0ZWRCdW5kbGVQYWdlRGlhZ25vc3RpY0xvZ2dpbmdDbGll
bnQgbV9sb2dEaWFnbm9zdGljTWVzc2FnZUNsaWVudDsKIAogICAgIEZpbmRDb250cm9sbGVyIG1f
ZmluZENvbnRyb2xsZXI7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>