NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.

To learn about what's going on, see About the Archive Site.

Re: Mac OS 10.4 with Absoft Pro 9.2: make test failure

--============_-1089530073==_===========
Content-Type: text/plain; charset="us-ascii" ; format="flowed"

I don't know if this will do the trick, but in previous versions of 
Absoft you had  to use a more recent version of cfortran.h than 
perhaps came with the netcdf library.  i have attached it. 
Theinstructions that cam with it were as follows:



1) Unpack the netcdf source tree. This will create a directory named
    netcdf-3.5.0.

    $ uncompress netcdf.tar.Z
    $ tar -xf netcdf.tar

2) Update netcdf3.5.0/src/fortran/cfortran.h. This README file was
    shipped as part of an archive that also included a new cfortran.h.
    You must use this cfortran.h when building netcdf 3.5.0 with Pro Fortran
    for OS X.

    $ cp cfortran.h netcdf3.5.0/src/fortran/cfortran.h

3) Setup the appropriate envrionment variables. If you are using
    tcsh (or another csh based command shell) enter:

    setenv FC /Applications/absoft/bin/f90
    setenv FFLAGS "-YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1"
    setenv F90 /Applications/absoft/bin/f90
    setenv F90FLAGS "-YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1"
    setenv FLIBS -lU77
    setenv CPPFLAGS "-DAbsoftProFortran"
    setenv CFLAGS ""

    If you are using bash (or another ksh based command shell) enter:

    export FC=/Applications/absoft/bin/f90
    export FFLAGS="-YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1"
    export F90=/Applications/absoft/bin/f90
    export F90FLAGS="-YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1"
    export FLIBS=-lU77
    export CPPFLAGS="-DAbsoftProFortran"
    export CFLAGS

4) Configure, build netcdf 3.5.0, and run the test suite:

    $ cd netcdf-3.5.0/src
    $ ./configure
    $ make
    $ make tests

5) Using netcdf 3.5.0:

    When linking against the netcdf library, your Fortran code must
    be compiled with -f -N15 and -N90 and your Fortran 90 code must
    be compiled with -YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1



If this works, I will send the bill to Russ.

-Roy M.


At 4:02 PM -0600 7/28/05, Mike Mills wrote:
>Hi folks,
>
>I've previously build NetCDF libraries on my Mac with IBM XL Fortran 
>extensions.  However, I now need to use Absoft Fortran Pro 9.2 in 
>order to compile 64-bit code.  I've run into the problem Russ Rew 
>described in January 2005 at the following website:
>
>http://my.unidata.ucar.edu/content/support/help/MailArchives/netcdf/msg02849.html
>
>As Russ mentions, "./configure" and "make" work, but "make test" 
>fails because the library has an extra "_" after the NetCDF C 
>functions, and hence they are not found.  I've not been able to find 
>any solutions to this issue in the discussion groups.  I have this 
>problem with v3.6.0, v3.6.0-p1, and v3.6.1-beta3.  I've tried lots 
>of different flag options.  These are the ones I've got right now:
>
>export CPPFLAGS="-DAbsoftProFortran"
>export CFLAGS=''
>export FLIBS="-lU77"
>export FC="/Applications/Absoft/bin/f90"
>export FFLAGS="-w -YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1"
>export F90="/Applications/Absoft/bin/f90"
>export F90FLAGS="-w -YEXT_NAMES=LCS -YEXT_SFX=_ -YCFRL=1"
>
>Does anyone know of a solution to this issue?
>
>-Mike Mills
>LASP, University of Colorado, Boulder


-- 
**********************
"The contents of this message do not reflect any position of the 
Government or NOAA."
**********************
Roy Mendelssohn
Supervisory Operations Research Analyst
NOAA/NMFS
Environmental Research Division
Southwest Fisheries Science Center
1352 Lighthouse Avenue
Pacific Grove, CA 93950-2097

e-mail: Roy.Mendelssohn@xxxxxxxx (Note new e-mail address)
voice: (831)-648-9029
fax: (831)-648-8440
www: http://www.pfeg.noaa.gov/

"Old age and treachery will overcome youth and skill."
--============_-1089530073==_===========
Content-Id: <p06230915bf0f16638f34@[161.55.17.99].0.0>
Content-Type: application/octet-stream; name="cfortran.h"
Content-Disposition: attachment; filename="cfortran.h"
Content-Transfer-Encoding: base64

LyogY2ZvcnRyYW4uaCAgNC4xICovICAgICAgICAgIC8qIGFub255bW91cyBmdHBAemVi
cmEuZGVzeS5kZSAqLwovKiBCdXJraGFyZCBCdXJvdyAgYnVyb3dAZGVzeS5kZSAgICAg
ICAgICAgICAgICAgMTk5MCAtIDE5OTguICovCgojaWZuZGVmIF9fQ0ZPUlRSQU5fTE9B
REVECiNkZWZpbmUgX19DRk9SVFJBTl9MT0FERUQKCi8qIAogICBUSElTIEZJTEUgSVMg
UFJPUEVSVFkgT0YgQlVSS0hBUkQgQlVST1cuIElGIFlPVSBBUkUgVVNJTkcgVEhJUyBG
SUxFIFlPVQogICBTSE9VTEQgQUxTTyBIQVZFIEFDQ0VTUyBUTyBDRk9SVFJBTi5ET0Mg
V0hJQ0ggUFJPVklERVMgVEVSTVMgRk9SIFVTSU5HLAogICBNT0RJRllJTkcsIENPUFlJ
TkcgQU5EIERJU1RSSUJVVElORyBUSEUgQ0ZPUlRSQU4uSCBQQUNLQUdFLgoqLwoKLyog
CiAgQXZvaWQgc3ltYm9scyBhbHJlYWR5IHVzZWQgYnkgY29tcGlsZXJzIGFuZCBzeXN0
ZW0gKi5oOgogIF9fIC0gT1NGMSB6dWthbDA2IFYzLjAgMzQ3IGFscGhhLCBjYyAtYyAt
c3RkMSBjZm9ydGVzdC5jCgogKi8KCgovKiBGaXJzdCBwcmVwYXJlIGZvciB0aGUgQyBj
b21waWxlci4gKi8KCiNpZm5kZWYgQU5TSV9DX3ByZXByb2Nlc3NvciAvKiBpLmUuIHVz
ZXIgY2FuIG92ZXJyaWRlLiAqLwojaWZkZWYgX19DRl9fS25SCiNkZWZpbmUgQU5TSV9D
X3ByZXByb2Nlc3NvciAwCiNlbHNlCiNpZmRlZiBfX1NURENfXwojZGVmaW5lIEFOU0lf
Q19wcmVwcm9jZXNzb3IgMQojZWxzZQojZGVmaW5lIF9jZmxlZnQgICAgICAgICAgICAg
MQojZGVmaW5lIF9jZnJpZ2h0IAojZGVmaW5lIF9jZmxlZnRfY2ZyaWdodCAgICAgMAoj
ZGVmaW5lIEFOU0lfQ19wcmVwcm9jZXNzb3IgX2NmbGVmdC8qKi9fY2ZyaWdodAojZW5k
aWYKI2VuZGlmCiNlbmRpZgoKI2lmIEFOU0lfQ19wcmVwcm9jZXNzb3IKI2RlZmluZSBf
MChBLEIpICAgQSMjQgojZGVmaW5lICBfKEEsQikgICBfMChBLEIpICAvKiBzZWUgY2F0
LHhjYXQgb2YgSyZSIEFOU0kgQyBwLiAyMzEgKi8KI2RlZmluZSBfMihBLEIpICAgQSMj
QiAgICAgLyogSyZSIEFOU0kgQyBwLjIzMDogLi4gaWRlbnRpZmllciBpcyBub3QgcmVw
bGFjZWQgKi8KI2RlZmluZSBfMyhBLEIsQykgXyhBLF8oQixDKSkKI2Vsc2UgICAgICAg
ICAgICAgICAgICAgICAgLyogaWYgaXQgdHVybnMgdXAgYWdhaW4gZHVyaW5nIHJlc2Nh
bm5pbmcuICAgICAgICAgKi8KI2RlZmluZSAgXyhBLEIpICAgQS8qKi9CCiNkZWZpbmUg
XzIoQSxCKSAgIEEvKiovQgojZGVmaW5lIF8zKEEsQixDKSBBLyoqL0IvKiovQwojZW5k
aWYKCiNpZiAoZGVmaW5lZCh2YXgpJiZkZWZpbmVkKHVuaXgpKSB8fCAoZGVmaW5lZChf
X3ZheF9fKSYmZGVmaW5lZChfX3VuaXhfXykpCiNkZWZpbmUgVkFYVWx0cml4CiNlbmRp
ZgoKI2luY2x1ZGUgPHN0ZGlvLmg+ICAgICAvKiBOVUxMIFtpbiBhbGwgbWFjaGluZXMg
c3RkaW8uaF0gICAgICAgICAgICAgICAgICAgICAgKi8KI2luY2x1ZGUgPHN0cmluZy5o
PiAgICAvKiBzdHJsZW4sIG1lbXNldCwgbWVtY3B5LCBtZW1jaHIuICAgICAgICAgICAg
ICAgICAgICAgKi8KI2lmICEoIGRlZmluZWQoVkFYVWx0cml4KSB8fCBkZWZpbmVkKHN1
bikgfHwgKGRlZmluZWQoYXBvbGxvKSYmIWRlZmluZWQoX19TVERDUFBfXykpICkKI2lu
Y2x1ZGUgPHN0ZGxpYi5oPiAgICAvKiBtYWxsb2MsZnJlZSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgKi8KI2Vsc2UKI2luY2x1ZGUgPG1hbGxvYy5o
PiAgICAvKiBIYWQgdG8gYmUgcmVtb3ZlZCBmb3IgRG9tYWluT1MgaDEwNSAxMC40IHN5
czUuMyA0MjV0Ki8KI2lmZGVmIGFwb2xsbwojZGVmaW5lIF9fQ0ZfX0FQT0xMTzY3IC8q
IF9fU1REQ1BQX18gaXMgaW4gQXBvbGxvIDYuOCAoaS5lLiBBTlNJKSBhbmQgb253YXJk
cyAqLwojZW5kaWYKI2VuZGlmCgojaWYgIWRlZmluZWQoX19HTlVDX18pICYmICFkZWZp
bmVkKF9fc3VuKSAmJiAoZGVmaW5lZChzdW4pfHxkZWZpbmVkKFZBWFVsdHJpeCl8fGRl
ZmluZWQobHlueCkpCiNkZWZpbmUgX19DRl9fS25SICAgICAvKiBTdW4sIEx5bnhPUyBh
bmQgVkFYIFVsdHJpeCBjYyBvbmx5IHN1cHBvcnRzIEsmUi4gICAgICovCiAgICAgICAg
ICAgICAgICAgICAgICAvKiBNYW51YWxseSBkZWZpbmUgX19DRl9fS25SIGZvciBIUCBp
ZiBkZXNpcmVkL3JlcXVpcmVkLiovCiNlbmRpZiAgICAgICAgICAgICAgICAvKiAgICAg
ICBpLmUuIFdlIHdpbGwgZ2VuZXJhdGUgS2VybmlnaGFuIGFuZCBSaXRjaGllIEMuICov
Ci8qIE5vdGUgdGhhdCB5b3UgbWF5IGRlZmluZSBfX0NGX19LblIgYmVmb3JlICNpbmNs
dWRlIGNmb3J0cmFuLmgsIGluIG9yZGVyIHRvCmdlbmVyYXRlIEsmUiBDIGluc3RlYWQg
b2YgdGhlIGRlZmF1bHQgQU5TSSBDLiBUaGUgZGlmZmVyZW5jZXMgYXJlIG1haW5seSBp
biB0aGUKZnVuY3Rpb24gcHJvdG90eXBlcyBhbmQgZGVjbGFyYXRpb25zLiBBbGwgbWFj
aGluZXMsIGV4Y2VwdCB0aGUgQXBvbGxvLCB3b3JrCndpdGggZWl0aGVyIHN0eWxlLiBU
aGUgQXBvbGxvJ3MgYXJndW1lbnQgcHJvbW90aW9uIHJ1bGVzIHJlcXVpcmUgQU5TSSBv
ciB1c2Ugb2YKdGhlIG9ic29sZXRlIHN0ZF8kY2FsbCB3aGljaCB3ZSBoYXZlIG5vdCBp
bXBsZW1lbnRlZCBoZXJlLiBIZW5jZSBvbiB0aGUgQXBvbGxvLApvbmx5IEMgY2FsbGlu
ZyBGT1JUUkFOIHN1YnJvdXRpbmVzIHdpbGwgd29yayB1c2luZyBLJlIgc3R5bGUuKi8K
CgovKiBSZW1haW5kZXIgb2YgY2ZvcnRyYW4uaCBkZXBlbmRzIG9uIHRoZSBGb3J0cmFu
IGNvbXBpbGVyLiAqLwoKI2lmIGRlZmluZWQoQ0xJUFBFUkZvcnRyYW4pIHx8IGRlZmlu
ZWQoX19DWUdXSU4zMl9fKQojaWZuZGVmIGYyY0ZvcnRyYW4KI2RlZmluZSBmMmNGb3J0
cmFuCiNlbmRpZgojZW5kaWYKCi8qIFZBWC9WTVMgZG9lcyBub3QgbGV0IHVzIFwtc3Bs
aXQgbG9uZyAjaWYgbGluZXMuICovIAovKiBTcGxpdCAjaWYgaW50byAyIGJlY2F1c2Ug
c29tZSBIUC1VWCBjYW4ndCBoYW5kbGUgbG9uZyAjaWYgKi8KI2lmICEoZGVmaW5lZChO
QUdmOTBGb3J0cmFuKXx8ZGVmaW5lZChmMmNGb3J0cmFuKXx8ZGVmaW5lZChocHV4Rm9y
dHJhbil8fGRlZmluZWQoYXBvbGxvRm9ydHJhbil8fGRlZmluZWQoc3VuRm9ydHJhbil8
fGRlZmluZWQoSUJNUjJGb3J0cmFuKXx8ZGVmaW5lZChDUkFZRm9ydHJhbil8fGRlZmlu
ZWQocGdpRm9ydHJhbikpCiNpZiAhKGRlZmluZWQobWlwc0ZvcnRyYW4pfHxkZWZpbmVk
KERFQ0ZvcnRyYW4pfHxkZWZpbmVkKHZtc0ZvcnRyYW4pfHxkZWZpbmVkKENPTlZFWEZv
cnRyYW4pfHxkZWZpbmVkKFBvd2VyU3RhdGlvbkZvcnRyYW4pfHxkZWZpbmVkKEFic29m
dFVOSVhGb3J0cmFuKXx8ZGVmaW5lZChBYnNvZnRQcm9Gb3J0cmFuKXx8ZGVmaW5lZChT
WEZvcnRyYW4pKQovKiBJZiBubyBGb3J0cmFuIGNvbXBpbGVyIGlzIGdpdmVuLCB3ZSBj
aG9vc2Ugb25lIGZvciB0aGUgbWFjaGluZXMgd2Uga25vdy4gICAqLwojaWYgZGVmaW5l
ZChseW54KSB8fCBkZWZpbmVkKFZBWFVsdHJpeCkKI2RlZmluZSBmMmNGb3J0cmFuICAg
IC8qIEx5bng6ICAgICAgT25seSBzdXBwb3J0IGYyYyBhdCB0aGUgbW9tZW50LgogICAg
ICAgICAgICAgICAgICAgICAgICAgVkFYVWx0cml4OiBmNzcgYmVoYXZlcyBsaWtlIGYy
Yy4KICAgICAgICAgICAgICAgICAgICAgICAgICAgU3VwcG9ydCBmMmMgb3IgZjc3IHdp
dGggZ2NjLCB2Y2Mgd2l0aCBmMmMuIAogICAgICAgICAgICAgICAgICAgICAgICAgICBm
Nzcgd2l0aCB2Y2Mgd29ya3MsIG1pc3NpbmcgbGluayBtYWdpYyBmb3IgZjc3IEkvTy4q
LwojZW5kaWYKI2lmIGRlZmluZWQoX19ocHV4KSAgICAgICAgICAgICAvKiA5MjExMDc6
IFVzZSBfX2hwdXggaW5zdGVhZCBvZiBfX2hwOTAwMHMzMDAgKi8KI2RlZmluZSAgICAg
ICBocHV4Rm9ydHJhbiAgICAgICAvKiAgICAgICAgIFNob3VsZCBhbHNvIGFsbG93IGhw
OTAwMHM3LzgwMCB1c2UuKi8KI2VuZGlmCiNpZiAgICAgICBkZWZpbmVkKGFwb2xsbykK
I2RlZmluZSAgICAgICAgICAgYXBvbGxvRm9ydHJhbiAvKiBfX0NGX19BUE9MTE82NyBh
bHNvIGRlZmluZXMgc29tZSBiZWhhdmlvci4gKi8KI2VuZGlmCiNpZiAgICAgICAgICBk
ZWZpbmVkKHN1bikgfHwgZGVmaW5lZChfX3N1bikgCiNkZWZpbmUgICAgICAgICAgICAg
IHN1bkZvcnRyYW4KI2VuZGlmCiNpZiAgICAgICBkZWZpbmVkKF9JQk1SMikKI2RlZmlu
ZSAgICAgICAgICAgIElCTVIyRm9ydHJhbgojZW5kaWYKI2lmICAgICAgICBkZWZpbmVk
KF9DUkFZKQojZGVmaW5lICAgICAgICAgICAgIENSQVlGb3J0cmFuIC8qICAgICAgIF9D
UkFZVDNFIGFsc28gZGVmaW5lcyBzb21lIGJlaGF2aW9yLiAqLwojZW5kaWYKI2lmICAg
ICAgICBkZWZpbmVkKF9TWCkKI2RlZmluZSAgICAgICAgICAgICAgIFNYRm9ydHJhbgoj
ZW5kaWYKI2lmICAgICAgICAgZGVmaW5lZChtaXBzKSB8fCBkZWZpbmVkKF9fbWlwcykK
I2RlZmluZSAgICAgICAgICAgICBtaXBzRm9ydHJhbgojZW5kaWYKI2lmICAgICAgICAg
IGRlZmluZWQodm1zKSB8fCBkZWZpbmVkKF9fdm1zKQojZGVmaW5lICAgICAgICAgICAg
ICB2bXNGb3J0cmFuCiNlbmRpZgojaWYgICAgICBkZWZpbmVkKF9fYWxwaGEpICYmIGRl
ZmluZWQoX191bml4X18pCiNkZWZpbmUgICAgICAgICAgICAgIERFQ0ZvcnRyYW4KI2Vu
ZGlmCiNpZiAgIGRlZmluZWQoX19jb252ZXhfXykKI2RlZmluZSAgICAgICAgICAgQ09O
VkVYRm9ydHJhbgojZW5kaWYKI2lmICAgZGVmaW5lZChWSVNVQUxfQ1BMVVNQTFVTKQoj
ZGVmaW5lICAgICBQb3dlclN0YXRpb25Gb3J0cmFuCiNlbmRpZgojZW5kaWYgLyogLi4u
Rm9ydHJhbiAqLwojZW5kaWYgLyogLi4uRm9ydHJhbiAqLwoKLyogU3BsaXQgI2lmIGlu
dG8gMiBiZWNhdXNlIHNvbWUgSFAtVVggY2FuJ3QgaGFuZGxlIGxvbmcgI2lmICovCiNp
ZiAhKGRlZmluZWQoTkFHZjkwRm9ydHJhbil8fGRlZmluZWQoZjJjRm9ydHJhbil8fGRl
ZmluZWQoaHB1eEZvcnRyYW4pfHxkZWZpbmVkKGFwb2xsb0ZvcnRyYW4pfHxkZWZpbmVk
KHN1bkZvcnRyYW4pfHxkZWZpbmVkKElCTVIyRm9ydHJhbil8fGRlZmluZWQoQ1JBWUZv
cnRyYW4pfHxkZWZpbmVkKHBnaUZvcnRyYW4pKQojaWYgIShkZWZpbmVkKG1pcHNGb3J0
cmFuKXx8ZGVmaW5lZChERUNGb3J0cmFuKXx8ZGVmaW5lZCh2bXNGb3J0cmFuKXx8ZGVm
aW5lZChDT05WRVhGb3J0cmFuKXx8ZGVmaW5lZChQb3dlclN0YXRpb25Gb3J0cmFuKXx8
ZGVmaW5lZChBYnNvZnRVTklYRm9ydHJhbil8fGRlZmluZWQoQWJzb2Z0UHJvRm9ydHJh
bil8fGRlZmluZWQoU1hGb3J0cmFuKSkKLyogSWYgeW91ciBjb21waWxlciBiYXJmcyBv
biAnICNlcnJvcicsIHJlcGxhY2UgIyB3aXRoIHRoZSB0cmlncmFwaCBmb3IgIyAgICAg
Ki8KICNlcnJvciAiY2ZvcnRyYW4uaDogIENhbid0IGZpbmQgeW91ciBlbnZpcm9ubWVu
dCBhbW9uZzpcCiAgICAtIE1JUFMgY2MgYW5kIGY3NyAyLjAuIChlLmcuIFNpbGljb24g
R3JhcGhpY3MsIERFQ3N0YXRpb25zLCAuLi4pICAgICBcCiAgICAtIElCTSBBSVggWEwg
QyBhbmQgRk9SVFJBTiBDb21waWxlci82MDAwIFZlcnNpb24gMDEuMDEuMDAwMC4wMDAw
ICAgICBcCiAgICAtIFZBWCAgIFZNUyBDQyAzLjEgYW5kIEZPUlRSQU4gNS40LiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAtIEFscGhhIFZNUyBERUMg
QyAxLjMgYW5kIERFQyBGT1JUUkFOIDYuMC4gICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiAgICAtIEFscGhhIE9TRiBERUMgQyBhbmQgREVDIEZvcnRyYW4gZm9yIE9TRi8x
IEFYUCBWZXJzaW9uIDEuMiAgICAgICAgICBcCiAgICAtIEFwb2xsbyBEb21haW5PUyAx
MC4yIChzeXM1LjMpIHdpdGggZjc3IDEwLjcgYW5kIGNjIDYuNy4gICAgICAgICAgICBc
CiAgICAtIENSQVkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAtIE5FQyBTWC00IFNVUEVSLVVYICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAtIENPTlZFWCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBcCiAgICAtIFN1biAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAt
IFBvd2VyU3RhdGlvbiBGb3J0cmFuIHdpdGggVmlzdWFsIEMrKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICAtIEhQOTAwMHMzMDAvczcwMC9zODAwIExhdGVz
dCB0ZXN0IHdpdGg6IEhQLVVYIEEuMDguMDcgQSA5MDAwLzczMCAgICBcCiAgICAtIEx5
bnhPUzogY2Mgb3IgZ2NjIHdpdGggZjJjLiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBcCiAgICAtIFZBWFVsdHJpeDogdmNjLGNjIG9yIGdjYyB3aXRo
IGYyYy4gZ2NjIG9yIGNjIHdpdGggZjc3LiAgICAgICAgICAgICBcCiAgICAtICAgICAg
ICAgICAgZjc3IHdpdGggdmNjIHdvcmtzOyBidXQgbWlzc2luZyBsaW5rIG1hZ2ljIGZv
ciBmNzcgSS9PLiBcCiAgICAtICAgICAgICAgICAgTk8gZm9ydC4gTm9uZSBvZiBnY2Ms
IGNjIG9yIHZjYyBnZW5lcmF0ZSByZXF1aXJlZCBuYW1lcy5cCiAgICAtIGYyYyAgICA6
IFVzZSAjZGVmaW5lICAgIGYyY0ZvcnRyYW4sIG9yIGNjIC1EZjJjRm9ydHJhbiAgICAg
ICAgICAgICBcCiAgICAtIE5BRyBmOTA6IFVzZSAjZGVmaW5lIE5BR2Y5MEZvcnRyYW4s
IG9yIGNjIC1ETkFHZjkwRm9ydHJhbiAgICAgICAgICBcCiAgICAtIEFic29mdCBVTklY
IEY3NzogVXNlICNkZWZpbmUgQWJzb2Z0VU5JWEZvcnRyYW4gb3IgY2MgLURBYnNvZnRV
TklYRm9ydHJhbiBcCiAgICAtIEFic29mdCBQcm8gRm9ydHJhbjogVXNlICNkZWZpbmUg
QWJzb2Z0UHJvRm9ydHJhbiBcCiAgICAtIFBvcnRsYW5kIEdyb3VwIEZvcnRyYW46IFVz
ZSAjZGVmaW5lIHBnaUZvcnRyYW4iCi8qIENvbXBpbGVyIG11c3QgdGhyb3cgdXMgb3V0
IGF0IHRoaXMgcG9pbnQhICovCiNlbmRpZgojZW5kaWYKCgojaWYgZGVmaW5lZChWQVhD
KSAmJiAhZGVmaW5lZChfX1ZBWEMpCiNkZWZpbmUgT0xEX1ZBWEMKI3ByYWdtYSBub3N0
YW5kYXJkICAgICAgICAgICAgICAgICAgICAgICAvKiBQcmV2ZW50ICVDQy1JLVBBUkFN
Tk9UVVNFRC4gICAgICAgKi8KI2VuZGlmCgovKiBUaHJvdWdob3V0IGNmb3J0cmFuLmgg
d2UgdXNlOiBVTiA9IFVwcGVyY2FzZSBOYW1lLiAgTE4gPSBMb3dlcmNhc2UgTmFtZS4g
ICAqLwoKI2lmIGRlZmluZWQoZjJjRm9ydHJhbikgfHwgZGVmaW5lZChOQUdmOTBGb3J0
cmFuKSB8fCBkZWZpbmVkKERFQ0ZvcnRyYW4pIHx8IGRlZmluZWQobWlwc0ZvcnRyYW4p
IHx8IGRlZmluZWQoYXBvbGxvRm9ydHJhbikgfHwgZGVmaW5lZChzdW5Gb3J0cmFuKSB8
fCBkZWZpbmVkKENPTlZFWEZvcnRyYW4pIHx8IGRlZmluZWQoU1hGb3J0cmFuKSB8fCBk
ZWZpbmVkKGV4dG5hbWUpIHx8IGRlZmluZWQocGdpRm9ydHJhbikgfHwgZGVmaW5lZChB
YnNvZnRQcm9Gb3J0cmFuKQojZGVmaW5lIENGQ18oVU4sTE4pICAgICAgICAgICAgXyhM
TixfKSAgICAgIC8qIExvd2VyY2FzZSBGT1JUUkFOIHN5bWJvbHMuICAgICAqLwojZGVm
aW5lIG9yaWdfZmNhbGxzYyhVTixMTikgICAgQ0ZDXyhVTixMTikKI2Vsc2UgCiNpZiBk
ZWZpbmVkKENSQVlGb3J0cmFuKSB8fCBkZWZpbmVkKFBvd2VyU3RhdGlvbkZvcnRyYW4p
IAojaWZkZWYgX0NSQVkgICAgICAgICAgLyogKFVOKSwgbm90IFVOLCBjaXJjdW12ZW50
cyBDUkFZIHByZXByb2Nlc3NvciBidWcuICAgICAqLwojZGVmaW5lIENGQ18oVU4sTE4p
ICAgICAgICAgICAgKFVOKSAgICAgICAgIC8qIFVwcGVyY2FzZSBGT1JUUkFOIHN5bWJv
bHMuICAgICAqLwojZWxzZSAgICAgICAgICAgICAgICAgLyogQXQgbGVhc3QgVklTVUFM
X0NQTFVTUExVUyBiYXJmcyBvbiAoVU4pLCBzbyBuZWVkIFVOLiAqLwojZGVmaW5lIENG
Q18oVU4sTE4pICAgICAgICAgICAgVU4gICAgICAgICAgIC8qIFVwcGVyY2FzZSBGT1JU
UkFOIHN5bWJvbHMuICAgICAqLwojZW5kaWYKI2RlZmluZSBvcmlnX2ZjYWxsc2MoVU4s
TE4pICAgIENGQ18oVU4sTE4pICAvKiBDUkFZIGluc2lzdHMgb24gYXJnLidzIGhlcmUu
ICAgKi8KI2Vsc2UgIC8qIEZvciBmb2xsb3dpbmcgbWFjaGluZXMgb25lIG1heSB3aXNo
IHRvIGNoYW5nZSB0aGUgZmNhbGxzYyBkZWZhdWx0LiAgKi8KI2RlZmluZSBDRl9TQU1F
X05BTUVTUEFDRQojaWZkZWYgdm1zRm9ydHJhbgojZGVmaW5lIENGQ18oVU4sTE4pICAg
ICAgICAgICAgTE4gICAgICAgICAgIC8qIEVpdGhlciBjYXNlIEZPUlRSQU4gc3ltYm9s
cy4gICAqLwogICAgIC8qIEJVVCB3ZSB1c3VhbGx5IHVzZSBVTiBmb3IgQyBtYWNybyB0
byBGT1JUUkFOIHJvdXRpbmVzLCBzbyB1c2UgTE4gaGVyZSwqLwogICAgIC8qIGJlY2F1
c2UgVkFYL1ZNUyBkb2Vzbid0IGRvIHJlY3Vyc2l2ZSBtYWNyb3MuICAgICAgICAgICAg
ICAgICAgICAgICAgICAqLwojZGVmaW5lIG9yaWdfZmNhbGxzYyhVTixMTikgICAgVU4K
I2Vsc2UgICAgICAvKiBIUC1VWCB3aXRob3V0ICtwcHUgb3IgSUJNUjIgd2l0aG91dCAt
cWV4dG5hbWUuIE5PVCByZWNjb21lbmRlZC4gKi8KI2RlZmluZSBDRkNfKFVOLExOKSAg
ICAgICAgICAgIExOICAgICAgICAgICAvKiBMb3dlcmNhc2UgRk9SVFJBTiBzeW1ib2xz
LiAgICAgKi8KI2RlZmluZSBvcmlnX2ZjYWxsc2MoVU4sTE4pICAgIENGQ18oVU4sTE4p
CiNlbmRpZiAvKiAgdm1zRm9ydHJhbiAqLwojZW5kaWYgLyogQ1JBWUZvcnRyYW4gUG93
ZXJTdGF0aW9uRm9ydHJhbiAqLwojZW5kaWYgLyogLi4uLkZvcnRyYW4gKi8KCiNkZWZp
bmUgZmNhbGxzYyhVTixMTikgICAgICAgICAgICAgICBvcmlnX2ZjYWxsc2MoVU4sTE4p
CiNkZWZpbmUgcHJlZmFjZV9mY2FsbHNjKFAscCxVTixMTikgICBDRkNfKF8oUCxVTiks
XyhwLExOKSkKI2RlZmluZSAgYXBwZW5kX2ZjYWxsc2MoUCxwLFVOLExOKSAgIENGQ18o
XyhVTixQKSxfKExOLHApKQoKI2RlZmluZSBDX0ZVTkNUSU9OKFVOLExOKSAgICAgICAg
ICAgIGZjYWxsc2MoVU4sTE4pICAgICAgCiNkZWZpbmUgRk9SVFJBTl9GVU5DVElPTihV
TixMTikgICAgICBDRkNfKFVOLExOKQoKI2lmbmRlZiBDT01NT05fQkxPQ0sKI2lmbmRl
ZiBDT05WRVhGb3J0cmFuCiNpZm5kZWYgQ0xJUFBFUkZvcnRyYW4KI2lmICAgICAhKGRl
ZmluZWQoQWJzb2Z0VU5JWEZvcnRyYW4pfHxkZWZpbmVkKEFic29mdFByb0ZvcnRyYW4p
KQojZGVmaW5lIENPTU1PTl9CTE9DSyhVTixMTikgICAgICAgICAgQ0ZDXyhVTixMTikK
I2Vsc2UKI2RlZmluZSBDT01NT05fQkxPQ0soVU4sTE4pICAgICAgICAgIF8oX0MsTE4p
CiNlbmRpZiAgLyogQWJzb2Z0VU5JWEZvcnRyYW4gb3IgQWJzb2Z0UHJvRm9ydHJhbiAq
LwojZWxzZQojZGVmaW5lIENPTU1PTl9CTE9DSyhVTixMTikgICAgICAgICAgXyhMTixf
XykKI2VuZGlmICAvKiBDTElQUEVSRm9ydHJhbiAqLwojZWxzZQojZGVmaW5lIENPTU1P
Tl9CTE9DSyhVTixMTikgICAgICAgICAgXzMoXyxMTixfKQojZW5kaWYgIC8qIENPTlZF
WEZvcnRyYW4gKi8KI2VuZGlmICAvKiBDT01NT05fQkxPQ0sgKi8KCiNpZm5kZWYgRE9V
QkxFX1BSRUNJU0lPTgojaWYgZGVmaW5lZChDUkFZRm9ydHJhbikgJiYgIWRlZmluZWQo
X0NSQVlUM0UpCiNkZWZpbmUgRE9VQkxFX1BSRUNJU0lPTiBsb25nIGRvdWJsZQojZWxz
ZQojZGVmaW5lIERPVUJMRV9QUkVDSVNJT04gZG91YmxlCiNlbmRpZgojZW5kaWYKCiNp
Zm5kZWYgRk9SVFJBTl9SRUFMCiNpZiBkZWZpbmVkKENSQVlGb3J0cmFuKSAmJiAgZGVm
aW5lZChfQ1JBWVQzRSkKI2RlZmluZSBGT1JUUkFOX1JFQUwgZG91YmxlCiNlbHNlCiNk
ZWZpbmUgRk9SVFJBTl9SRUFMIGZsb2F0CiNlbmRpZgojZW5kaWYKCiNpZmRlZiBDUkFZ
Rm9ydHJhbgojaWZkZWYgX0NSQVkKI2luY2x1ZGUgPGZvcnRyYW4uaD4KI2Vsc2UKI2lu
Y2x1ZGUgImZvcnRyYW4uaCIgIC8qIGkuZS4gaWYgY3Jvc3Njb21waWxpbmcgYXNzdW1l
IHVzZXIgaGFzIGZpbGUuICovCiNlbmRpZgojZGVmaW5lIEZMT0FUVlZWVlZWVl9jZlBQ
IChGT1JUUkFOX1JFQUwgKikgICAvKiBVc2VkIGZvciBDIGNhbGxzIEZPUlRSQU4uICAg
ICAqLwovKiBDUkFZJ3MgZG91YmxlPT1mbG9hdCBidXQgQ1JBWSBzYXlzIHBvaW50ZXJz
IHRvIGRvdWJsZXMgYW5kIGZsb2F0cyBhcmUgZGlmZi4qLwojZGVmaW5lIFZPSURQICAo
dm9pZCAqKSAgLyogV2hlbiBGT1JUUkFOIGNhbGxzIEMsIHdlIGRvbid0IGtub3cgaWYg
QyByb3V0aW5lIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnLidzIGhhdmUg
YmVlbiBkZWNsYXJlZCBmbG9hdCAqLCBvciBkb3VibGUgKi4gICAqLwojZWxzZQojZGVm
aW5lIEZMT0FUVlZWVlZWVl9jZlBQCiNkZWZpbmUgVk9JRFAKI2VuZGlmCgojaWZkZWYg
dm1zRm9ydHJhbgojaWYgICAgZGVmaW5lZCh2bXMpIHx8IGRlZmluZWQoX192bXMpCiNp
bmNsdWRlIDxkZXNjcmlwLmg+CiNlbHNlCiNpbmNsdWRlICJkZXNjcmlwLmgiICAvKiBp
LmUuIGlmIGNyb3NzY29tcGlsaW5nIGFzc3VtZSB1c2VyIGhhcyBmaWxlLiAqLwojZW5k
aWYKI2VuZGlmCgojaWZkZWYgc3VuRm9ydHJhbgojaWYgZGVmaW5lZChzdW4pIHx8IGRl
ZmluZWQoX19zdW4pCiNpbmNsdWRlIDxtYXRoLmg+ICAgICAvKiBTdW4ncyBGTE9BVEZV
TkNUSU9OVFlQRSwgQVNTSUdORkxPQVQsIFJFVFVSTkZMT0FULiAgKi8KI2Vsc2UKI2lu
Y2x1ZGUgIm1hdGguaCIgICAgIC8qIGkuZS4gaWYgY3Jvc3Njb21waWxpbmcgYXNzdW1l
IHVzZXIgaGFzIGZpbGUuICovCiNlbmRpZgovKiBBdCBsZWFzdCBzdGFydGluZyB3aXRo
IHRoZSBkZWZhdWx0IEMgY29tcGlsZXIgU0MzLjAuMSBvZiBTdW5PUyA1LjMsCiAqIEZM
T0FURlVOQ1RJT05UWVBFLCBBU1NJR05GTE9BVCwgUkVUVVJORkxPQVQgYXJlIG5vdCBy
ZXF1aXJlZCBhbmQgbm90IGluCiAqIDxtYXRoLmg+LCBzaW5jZSBzdW4gQyBubyBsb25n
ZXIgcHJvbW90ZXMgQyBmbG9hdCByZXR1cm4gdmFsdWVzIHRvIGRvdWJsZXMuCiAqIFRo
ZXJlZm9yZSwgb25seSB1c2UgdGhlbSBpZiBkZWZpbmVkLgogKiBFdmVuIGlmIGdjYyBp
cyBiZWluZyB1c2VkLCBhc3N1bWUgdGhhdCBpdCBleGhpYml0cyB0aGUgU3VuIEMgY29t
cGlsZXIKICogYmVoYXZpb3IgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byB1c2UgKi5vIGZy
b20gdGhlIFN1biBDIGNvbXBpbGVyLgogKiBpLmUuIElmIEZMT0FURlVOQ1RJT05UWVBF
LCBldGMuIGFyZSBpbiBtYXRoLmgsIHRoZXkgcmVxdWlyZWQgYnkgZ2NjLgogKi8KI2Vu
ZGlmCgojaWZuZGVmIGFwb2xsb0ZvcnRyYW4KI2RlZmluZSBDT01NT05fQkxPQ0tfREVG
KERFRklOSVRJT04sIE5BTUUpIGV4dGVybiBERUZJTklUSU9OIE5BTUUKI2RlZmluZSBD
Rl9OVUxMX1BST1RPCiNlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAvKiBIUCBkb2Vzbid0IHVuZGVyc3RhbmQgI2VsaWYuICovCi8qIFdpdGhv
dXQgQU5TSSBwcm90b3R5cGluZywgQXBvbGxvIHByb21vdGVzIGZsb2F0IGZ1bmN0aW9u
cyB0byBkb3VibGUuICAgICovCi8qIE5vdGUgdGhhdCBWQVgvVk1TLCBJQk0sIE1pcHMg
Y2hva2Ugb24gJ3R5cGUgZnVuY3Rpb24oLi4uKTsnIHByb3RvdHlwZXMuICovCiNkZWZp
bmUgQ0ZfTlVMTF9QUk9UTyAuLi4KI2lmbmRlZiBfX0NGX19BUE9MTE82NwojZGVmaW5l
IENPTU1PTl9CTE9DS19ERUYoREVGSU5JVElPTiwgTkFNRSkgXAogREVGSU5JVElPTiBO
QU1FIF9fYXR0cmlidXRlKChfX3NlY3Rpb24oTkFNRSkpKQojZWxzZQojZGVmaW5lIENP
TU1PTl9CTE9DS19ERUYoREVGSU5JVElPTiwgTkFNRSkgXAogREVGSU5JVElPTiBOQU1F
ICNhdHRyaWJ1dGVbc2VjdGlvbihOQU1FKV0KI2VuZGlmCiNlbmRpZgoKI2lmZGVmIF9f
Y3BsdXNwbHVzCiN1bmRlZiAgQ0ZfTlVMTF9QUk9UTwojZGVmaW5lIENGX05VTExfUFJP
VE8gIC4uLgojZW5kaWYKCgojaWZuZGVmIFVTRV9ORVdfREVMRVRFCiNpZmRlZiBfX2Nw
bHVzcGx1cwojZGVmaW5lIFVTRV9ORVdfREVMRVRFIDEKI2Vsc2UKI2RlZmluZSBVU0Vf
TkVXX0RFTEVURSAwCiNlbmRpZgojZW5kaWYKI2lmIFVTRV9ORVdfREVMRVRFCiNkZWZp
bmUgX2NmX21hbGxvYyhOKSBuZXcgY2hhcltOXQojZGVmaW5lIF9jZl9mcmVlKFApICAg
ZGVsZXRlW10gUAojZWxzZQojZGVmaW5lIF9jZl9tYWxsb2MoTikgKGNoYXIgKiltYWxs
b2MoTikKI2RlZmluZSBfY2ZfZnJlZShQKSAgIGZyZWUoUCkKI2VuZGlmCgojaWZkZWYg
bWlwc0ZvcnRyYW4KI2RlZmluZSBDRl9ERUNMQVJFX0dFVEFSRyAgICAgICAgIGludCBm
NzdhcmdjOyBjaGFyICoqZjc3YXJndgojZGVmaW5lIENGX1NFVF9HRVRBUkcoQVJHQyxB
UkdWKSAgZjc3YXJnYyA9IEFSR0M7IGY3N2FyZ3YgPSBBUkdWCiNlbHNlCiNkZWZpbmUg
Q0ZfREVDTEFSRV9HRVRBUkcKI2RlZmluZSBDRl9TRVRfR0VUQVJHKEFSR0MsQVJHVikK
I2VuZGlmCgojaWZkZWYgT0xEX1ZBWEMgICAgICAgICAgICAgICAgICAgICAgICAgIC8q
IEFsbG93ICVDQy1JLVBBUkFNTk9UVVNFRC4gICAgICAgICAqLwojcHJhZ21hIHN0YW5k
YXJkICAgICAgICAgICAgICAgICAgICAgICAgIAojZW5kaWYKCiNkZWZpbmUgQWNmQ09N
TUEgLAojZGVmaW5lIEFjZkNPTE9OIDsKCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSov
CgovKiAgICAgICAgICAgICAgIFVUSUxJVElFUyBVU0VEIFdJVEhJTiBDRk9SVFJBTi5I
ICAgICAgICAgICAgICAgICAgICAgICAgICAqLwoKI2RlZmluZSBfY2ZNSU4oQSxCKSAo
QTxCP0E6QikKCi8qIDk3MDIxMSAtIFhJWC4xNDU6CiAgIGZpcnN0aW5kZXhsZW5ndGgg
IC0gYmV0dGVyIG5hbWUgaXMgYWxsX2J1dF9sYXN0X2luZGV4X2xlbmd0aHMKICAgc2Vj
b25kaW5kZXhsZW5ndGggLSBiZXR0ZXIgbmFtZSBpcyAgICAgICAgIGxhc3RfaW5kZXhf
bGVuZ3RoCiAqLwojZGVmaW5lICBmaXJzdGluZGV4bGVuZ3RoKEEpIChzaXplb2YoQVsw
XSk9PTEgPyAxIDogKHNpemVvZihBKSAvIHNpemVvZihBWzBdKSkgKQojZGVmaW5lIHNl
Y29uZGluZGV4bGVuZ3RoKEEpIChzaXplb2YoQVswXSk9PTEgPyAgICAgIHNpemVvZihB
KSA6IHNpemVvZihBWzBdKSAgKQoKLyogQmVoYXZpb3Igb2YgRk9SVFJBTiBMT0dJQ0FM
LiBBbGwgbWFjaGluZXMnIExPR0lDQUwgaXMgc2FtZSBzaXplIGFzIEMncyBpbnQuCkNv
bnZlcnNpb24gaXMgYXV0b21hdGljIGV4Y2VwdCBmb3IgYXJyYXlzIHdoaWNoIHJlcXVp
cmUgRjJDTE9HSUNBTFYvQzJGTE9HSUNBTFYuCmYyYywgTUlQUyBmNzcgW0RFQ3N0YXRp
b24sIFNHSV0sIFZBWCBVbHRyaXggZjc3LApIUC1VWCBmNzcgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgOiBhcyBpbiBDLgpWQVgvVk1TIEZPUlRSQU4s
IFZBWCBVbHRyaXggZm9ydCwKQWJzb2Z0IFVuaXggRm9ydHJhbiwgSUJNIFJTLzYwMDAg
eGxmICAgICAgICAgICAgIDogTFMgQml0ID0gMC8xID0gVFJVRS9GQUxTRS4KQXBvbGxv
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbmVnLiAg
ID0gVFJVRSwgZWxzZSBGQUxTRS4gCltBcG9sbG8gYWNjZXB0cyAtMSBhcyBUUlVFIGZv
ciBmdW5jdGlvbiB2YWx1ZXMsIGJ1dCBOT1QgYWxsIG90aGVyIG5lZy4gdmFsdWVzLl0K
W0RFQ0ZvcnRyYW4gZm9yIFVsdHJpeCBSSVNDIGlzIGFsc28gY2FsbGVkIGY3NyBidXQg
aXMgdGhlIHNhbWUgYXMgVkFYL1ZNUy5dICAgCltNSVBTIGY3NyB0cmVhdHMgLmVxdi4v
Lm5lcXYuIGFzIC5lcS4vLm5lLiBhbmQgaGVuY2UgcmVxdWlyZXMgTE9HSUNBTF9TVFJJ
Q1QuXSovCgojaWYgZGVmaW5lZChOQUdmOTBGb3J0cmFuKSB8fCBkZWZpbmVkKGYyY0Zv
cnRyYW4pIHx8IGRlZmluZWQobWlwc0ZvcnRyYW4pIHx8IGRlZmluZWQoUG93ZXJTdGF0
aW9uRm9ydHJhbikgfHwgZGVmaW5lZChocHV4Rm9ydHJhbjgwMCkgfHwgZGVmaW5lZChB
YnNvZnRVTklYRm9ydHJhbikgfHwgZGVmaW5lZChBYnNvZnRQcm9Gb3J0cmFuKSB8fCBk
ZWZpbmVkKFNYRm9ydHJhbikgfHwgZGVmaW5lZChwZ2lGb3J0cmFuKQovKiBTWC9Qb3dl
clN0YXRpb25Gb3J0cmFuIGhhdmUgMCBhbmQgMSBkZWZpbmVkLCBvdGhlcnMgYXJlIG5l
aXRoZXIgVCBub3IgRi4gICAqLwovKiBocHV4Rm9ydHJhbjgwMCBoYXMgMCBhbmQgMHgw
MTAwMDAwMCBkZWZpbmVkLiBPdGhlcnMgYXJlIHVua25vd24uICAgICAgICAgICAqLwoj
ZGVmaW5lIExPR0lDQUxfU1RSSUNUICAgICAgLyogT3RoZXIgRm9ydHJhbiBoYXZlIC5l
cXYuLy5uZXF2LiA9PSAuZXEuLy5uZS4gICAqLwojZW5kaWYKCiNkZWZpbmUgQzJGTE9H
SUNBTFYoQSxJKSBcCiBkbyB7aW50IF9faTsgZm9yKF9faT0wO19faTxJO19faSsrKSBB
W19faV09QzJGTE9HSUNBTChBW19faV0pOyB9IHdoaWxlICgwKQojZGVmaW5lIEYyQ0xP
R0lDQUxWKEEsSSkgXAogZG8ge2ludCBfX2k7IGZvcihfX2k9MDtfX2k8STtfX2krKykg
QVtfX2ldPUYyQ0xPR0lDQUwoQVtfX2ldKTsgfSB3aGlsZSAoMCkKCiNpZiBkZWZpbmVk
KGFwb2xsb0ZvcnRyYW4pCiNkZWZpbmUgQzJGTE9HSUNBTChMKSAoKEwpPy0xOihMKSZ+
KCh1bnNpZ25lZCkxPDxzaXplb2YoaW50KSo4LTEpKQojZGVmaW5lIEYyQ0xPR0lDQUwo
TCkgKChMKTwwPyhMKTowKSAKI2Vsc2UKI2lmIGRlZmluZWQoQ1JBWUZvcnRyYW4pCiNk
ZWZpbmUgQzJGTE9HSUNBTChMKSBfYnRvbChMKQojZGVmaW5lIEYyQ0xPR0lDQUwoTCkg
X2x0b2IoJihMKSkgICAgIC8qIFN0cmFuZ2VseSBfbHRvYigpIGV4cGVjdHMgYSBwb2lu
dGVyLiAqLwojZWxzZQojaWYgZGVmaW5lZChJQk1SMkZvcnRyYW4pIHx8IGRlZmluZWQo
dm1zRm9ydHJhbikgfHwgZGVmaW5lZChERUNGb3J0cmFuKSB8fCBkZWZpbmVkKEFic29m
dFVOSVhGb3J0cmFuKSB8fCBkZWZpbmVkKEFic29mdFByb0ZvcnRyYW4pCiNkZWZpbmUg
QzJGTE9HSUNBTChMKSAoKEwpPyhMKXwxOihMKSZ+KGludCkxKQojZGVmaW5lIEYyQ0xP
R0lDQUwoTCkgKChMKSYxPyhMKTowKQojZWxzZQojaWYgZGVmaW5lZChDT05WRVhGb3J0
cmFuKQojZGVmaW5lIEMyRkxPR0lDQUwoTCkgKChMKSA/IH4wIDogMCApCiNkZWZpbmUg
RjJDTE9HSUNBTChMKSAoTCkKI2Vsc2UgICAvKiBvdGhlcnMgZXZhbHVhdGUgTE9HSUNB
THMgYXMgZm9yIEMuICovCiNkZWZpbmUgQzJGTE9HSUNBTChMKSAoTCkKI2RlZmluZSBG
MkNMT0dJQ0FMKEwpIChMKQojaWZuZGVmIExPR0lDQUxfU1RSSUNUCiN1bmRlZiAgQzJG
TE9HSUNBTFYKI3VuZGVmICBGMkNMT0dJQ0FMVgojZGVmaW5lIEMyRkxPR0lDQUxWKEEs
SSkKI2RlZmluZSBGMkNMT0dJQ0FMVihBLEkpCiNlbmRpZiAgLyogTE9HSUNBTF9TVFJJ
Q1QgICAgICAgICAgICAgICAgICAgICAqLwojZW5kaWYgIC8qIENPTlZFWEZvcnRyYW4g
fHwgQWxsIE90aGVycyAgICAgICAgKi8KI2VuZGlmICAvKiBJQk1SMkZvcnRyYW4gdm1z
Rm9ydHJhbiBERUNGb3J0cmFuIEFic29mdFVOSVhGb3J0cmFuICovCiNlbmRpZiAgLyog
Q1JBWUZvcnRyYW4gICAgICAgICAgICAgICAgICAgICAgICAqLwojZW5kaWYgIC8qIGFw
b2xsb0ZvcnRyYW4gICAgICAgICAgICAgICAgICAgICAgKi8KCi8qIDk3MDUxNCAtIElu
IGFkZGl0aW9uIHRvIENSQVksIHRoZXJlIG1heSBiZSBvdGhlciBtYWNoaW5lcwogICAg
ICAgICAgICBmb3Igd2hpY2ggTE9HSUNBTF9TVFJJQ1QgbWFrZXMgbm8gc2Vuc2UuICov
CiNpZiBkZWZpbmVkKExPR0lDQUxfU1RSSUNUKSAmJiAhZGVmaW5lZChDUkFZRm9ydHJh
bikKLyogRm9yY2UgQzJGTE9HSUNBTCB0byBnZW5lcmF0ZSBvbmx5IHRoZSB2YWx1ZXMg
Zm9yIGVpdGhlciAuVFJVRS4gb3IgLkZBTFNFLgogICBTWC9Qb3dlclN0YXRpb25Gb3J0
cmFuIG9ubHkgaGF2ZSAwIGFuZCAxIGRlZmluZWQuCiAgIEVsc2V3aGVyZSwgb25seSBu
ZWVkZWQgaWYgeW91IHdhbnQgdG8gZG86CiAgICAgbG9naWNhbCBsdmFyaWFibGUKICAg
ICBpZiAobHZhcmlhYmxlIC5lcS4gIC50cnVlLikgdGhlbiAgICAgICAhICgxKQogICBp
bnN0ZWFkIG9mCiAgICAgaWYgKGx2YXJpYWJsZSAuZXF2LiAudHJ1ZS4pIHRoZW4gICAg
ICAgISAoMikKICAgLSAoMSkgbWF5IG5vdCBldmVuIGJlIEZPUlRSQU4vNzcgYW5kIHRo
YXQgQXBvbGxvJ3MgZjc3IGFuZCBJQk0ncyB4bGYKICAgICByZWZ1c2UgdG8gY29tcGls
ZSAoMSksIHNvIHlvdSBhcmUgcHJvYmFibHkgd2VsbCBhZHZpc2VkIHRvIHN0YXkgYXdh
eSBmcm9tIAogICAgICgxKSBhbmQgZnJvbSBMT0dJQ0FMX1NUUklDVC4KICAgLSBZb3Ug
cGF5IGEgKHNsaWdodCkgcGVyZm9ybWFuY2UgcGVuYWx0eSBmb3IgdXNpbmcgTE9HSUNB
TF9TVFJJQ1QuICovCiN1bmRlZiAgQzJGTE9HSUNBTAojaWZkZWYgaHB1eEZvcnRyYW44
MDAKI2RlZmluZSBDMkZMT0dJQ0FMKEwpICgoTCk/MHgwMTAwMDAwMDowKQojZWxzZQoj
aWYgZGVmaW5lZChhcG9sbG9Gb3J0cmFuKSB8fCBkZWZpbmVkKHZtc0ZvcnRyYW4pIHx8
IGRlZmluZWQoREVDRm9ydHJhbikKI2RlZmluZSBDMkZMT0dJQ0FMKEwpICgoTCk/LTE6
MCkgLyogVGhlc2UgbWFjaGluZXMgdXNlIC0xLzAgZm9yIC50cnVlLi8uZmFsc2UuKi8K
I2Vsc2UKI2RlZmluZSBDMkZMT0dJQ0FMKEwpICgoTCk/IDE6MCkgLyogQWxsIG90aGVy
cyAgICAgdXNlICsxLzAgZm9yIC50cnVlLi8uZmFsc2UuKi8KI2VuZGlmCiNlbmRpZgoj
ZW5kaWYgLyogTE9HSUNBTF9TVFJJQ1QgKi8KCi8qIENvbnZlcnQgYSB2ZWN0b3Igb2Yg
QyBzdHJpbmdzIGludG8gRk9SVFJBTiBzdHJpbmdzLiAqLwojaWZuZGVmIF9fQ0ZfX0tu
UgpzdGF0aWMgY2hhciAqYzJmc3RydihjaGFyKiBjc3RyLCBjaGFyICpmc3RyLCBpbnQg
ZWxlbV9sZW4sIGludCBzaXplb2Zjc3RyKQojZWxzZQpzdGF0aWMgY2hhciAqYzJmc3Ry
diggICAgICBjc3RyLCAgICAgICBmc3RyLCAgICAgZWxlbV9sZW4sICAgICBzaXplb2Zj
c3RyKQogICAgICAgICAgICAgICAgICAgICBjaGFyKiBjc3RyOyBjaGFyICpmc3RyOyBp
bnQgZWxlbV9sZW47IGludCBzaXplb2Zjc3RyOwojZW5kaWYKeyBpbnQgaSxqOwovKiBl
bGVtX2xlbiBpbmNsdWRlcyBcMCBmb3IgQyBzdHJpbmdzLiBGb3J0cmFuIHN0cmluZ3Mg
ZG9uJ3QgaGF2ZSB0ZXJtLiBcMC4KICAgVXNlZnVsIHNpemUgb2Ygc3RyaW5nIG11c3Qg
YmUgdGhlIHNhbWUgaW4gYm90aCBsYW5ndWFnZXMuICovCmZvciAoaT0wOyBpPHNpemVv
ZmNzdHIvZWxlbV9sZW47IGkrKykgewogIGZvciAoaj0xOyBqPGVsZW1fbGVuICYmICpj
c3RyOyBqKyspICpmc3RyKysgPSAqY3N0cisrOwogIGNzdHIgKz0gMStlbGVtX2xlbi1q
OwogIGZvciAoOyBqPGVsZW1fbGVuOyBqKyspICpmc3RyKysgPSAnICc7Cn0gLyogOTUx
MDkgLSBTZWVtcyB0byBiZSByZXR1cm5pbmcgdGhlIG9yaWdpbmFsIGZzdHIuICovCnJl
dHVybiBmc3RyLXNpemVvZmNzdHIrc2l6ZW9mY3N0ci9lbGVtX2xlbjsgfQoKLyogQ29u
dmVydCBhIHZlY3RvciBvZiBGT1JUUkFOIHN0cmluZ3MgaW50byBDIHN0cmluZ3MuICov
CiNpZm5kZWYgX19DRl9fS25SCnN0YXRpYyBjaGFyICpmMmNzdHJ2KGNoYXIgKmZzdHIs
IGNoYXIqIGNzdHIsIGludCBlbGVtX2xlbiwgaW50IHNpemVvZmNzdHIpCiNlbHNlCnN0
YXRpYyBjaGFyICpmMmNzdHJ2KCAgICAgIGZzdHIsICAgICAgIGNzdHIsICAgICBlbGVt
X2xlbiwgICAgIHNpemVvZmNzdHIpCiAgICAgICAgICAgICAgICAgICAgIGNoYXIgKmZz
dHI7IGNoYXIqIGNzdHI7IGludCBlbGVtX2xlbjsgaW50IHNpemVvZmNzdHI7IAojZW5k
aWYKeyBpbnQgaSxqOwovKiBlbGVtX2xlbiBpbmNsdWRlcyBcMCBmb3IgQyBzdHJpbmdz
LiBGb3J0cmFuIHN0cmluZ3MgZG9uJ3QgaGF2ZSB0ZXJtLiBcMC4KICAgVXNlZnVsIHNp
emUgb2Ygc3RyaW5nIG11c3QgYmUgdGhlIHNhbWUgaW4gYm90aCBsYW5ndWFnZXMuICov
CmNzdHIgKz0gc2l6ZW9mY3N0cjsKZnN0ciArPSBzaXplb2Zjc3RyIC0gc2l6ZW9mY3N0
ci9lbGVtX2xlbjsKZm9yIChpPTA7IGk8c2l6ZW9mY3N0ci9lbGVtX2xlbjsgaSsrKSB7
CiAgKi0tY3N0ciA9ICdcMCc7CiAgZm9yIChqPTE7IGo8ZWxlbV9sZW47IGorKykgKi0t
Y3N0ciA9ICotLWZzdHI7Cn0gcmV0dXJuIGNzdHI7IH0KCi8qIGtpbGwgdGhlIHRyYWls
aW5nIGNoYXIgdCdzIGluIHN0cmluZyBzLiAqLwojaWZuZGVmIF9fQ0ZfX0tuUgpzdGF0
aWMgY2hhciAqa2lsbF90cmFpbGluZyhjaGFyICpzLCBjaGFyIHQpCiNlbHNlCnN0YXRp
YyBjaGFyICpraWxsX3RyYWlsaW5nKCAgICAgIHMsICAgICAgdCkgY2hhciAqczsgY2hh
ciB0OwojZW5kaWYKe2NoYXIgKmU7IAplID0gcyArIHN0cmxlbihzKTsKaWYgKGU+cykg
eyAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIE5lZWQgdGhpcyB0byBoYW5kbGUg
TlVMTCBzdHJpbmcuKi8KICB3aGlsZSAoZT5zICYmICotLWU9PXQpOyAgICAgICAgICAg
IC8qIERvbid0IGZvbGxvdyB0J3MgcGFzdCBiZWdpbm5pbmcuICovCiAgZVsqZT09dD8w
OjFdID0gJ1wwJzsgICAgICAgICAgICAgICAvKiBIYW5kbGUgc1swXT10IGNvcnJlY3Rs
eS4gICAgICAgKi8KfSByZXR1cm4gczsgfQoKLyoga2lsbF90cmFpbGluZ24ocyx0LGUp
IHdpbGwga2lsbCB0aGUgdHJhaWxpbmcgdCdzIGluIHN0cmluZyBzLiBlIG5vcm1hbGx5
IApwb2ludHMgdG8gdGhlIHRlcm1pbmF0aW5nICdcMCcgb2YgcywgYnV0IG1heSBhY3R1
YWxseSBwb2ludCB0byBhbnl3aGVyZSBpbiBzLgpzJ3MgbmV3ICdcMCcgd2lsbCBiZSBw
bGFjZWQgYXQgZSBvciBlYXJsaWVyIGluIG9yZGVyIHRvIHJlbW92ZSBhbnkgdHJhaWxp
bmcgdCdzLgpJZiBlPHMgc3RyaW5nIHMgaXMgbGVmdCB1bmNoYW5nZWQuICovIAojaWZu
ZGVmIF9fQ0ZfX0tuUgpzdGF0aWMgY2hhciAqa2lsbF90cmFpbGluZ24oY2hhciAqcywg
Y2hhciB0LCBjaGFyICplKQojZWxzZQpzdGF0aWMgY2hhciAqa2lsbF90cmFpbGluZ24o
ICAgICAgcywgICAgICB0LCAgICAgICBlKSBjaGFyICpzOyBjaGFyIHQ7IGNoYXIgKmU7
CiNlbmRpZgp7IAppZiAoZT09cykgKmUgPSAnXDAnOyAgICAgICAgICAgICAgICAgLyog
S2lsbCB0aGUgc3RyaW5nIG1ha2VzIHNlbnNlIGhlcmUuKi8KZWxzZSBpZiAoZT5zKSB7
ICAgICAgICAgICAgICAgICAgICAgIC8qIFdhdGNoIG91dCBmb3IgbmVnLiBsZW5ndGgg
c3RyaW5nLiovCiAgd2hpbGUgKGU+cyAmJiAqLS1lPT10KTsgICAgICAgICAgICAvKiBE
b24ndCBmb2xsb3cgdCdzIHBhc3QgYmVnaW5uaW5nLiAqLwogIGVbKmU9PXQ/MDoxXSA9
ICdcMCc7ICAgICAgICAgICAgICAgLyogSGFuZGxlIHNbMF09dCBjb3JyZWN0bHkuICAg
ICAgICovCn0gcmV0dXJuIHM7IH0KCi8qIE5vdGUgdGhlIGZvbGxvd2luZyBhc3N1bWVz
IHRoYXQgYW55IGVsZW1lbnQgd2hpY2ggaGFzIHQncyB0byBiZSBjaG9wcGVkIG9mZiwK
ZG9lcyBpbmRlZWQgZmlsbCB0aGUgZW50aXJlIGVsZW1lbnQuICovCiNpZm5kZWYgX19D
Rl9fS25SCnN0YXRpYyBjaGFyICp2a2lsbF90cmFpbGluZyhjaGFyKiBjc3RyLCBpbnQg
ZWxlbV9sZW4sIGludCBzaXplb2Zjc3RyLCBjaGFyIHQpCiNlbHNlCnN0YXRpYyBjaGFy
ICp2a2lsbF90cmFpbGluZyggICAgICBjc3RyLCAgICAgZWxlbV9sZW4sICAgICBzaXpl
b2Zjc3RyLCAgICAgIHQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFyKiBj
c3RyOyBpbnQgZWxlbV9sZW47IGludCBzaXplb2Zjc3RyOyBjaGFyIHQ7CiNlbmRpZgp7
IGludCBpOwpmb3IgKGk9MDsgaTxzaXplb2Zjc3RyL2VsZW1fbGVuOyBpKyspIC8qIGVs
ZW1fbGVuIGluY2x1ZGVzIFwwIGZvciBDIHN0cmluZ3MuICovCiAga2lsbF90cmFpbGlu
Z24oY3N0citlbGVtX2xlbippLHQsY3N0citlbGVtX2xlbiooaSsxKS0xKTsKcmV0dXJu
IGNzdHI7IH0KCiNpZmRlZiB2bXNGb3J0cmFuCnR5cGVkZWYgc3RydWN0IGRzYyRkZXNj
cmlwdG9yX3MgZnN0cmluZzsKI2RlZmluZSBEU0MkREVTQ1JJUFRPUl9BKERJTUNUKSAg
CQkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApzdHJ1Y3QgeyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAogIHVuc2lnbmVkIHNob3J0IGRzYyR3X2xlbmd0aDsJICAgICAg
ICB1bnNpZ25lZCBjaGFyCSBkc2MkYl9kdHlwZTsJICAgICAgIFwKICB1bnNpZ25lZCBj
aGFyCSBkc2MkYl9jbGFzczsJICAgICAgICAgICAgICAgICBjaGFyCSpkc2MkYV9wb2lu
dGVyOwkgICAgICAgXAogICAgICAgICAgIGNoYXIJIGRzYyRiX3NjYWxlOwkgICAgICAg
IHVuc2lnbmVkIGNoYXIJIGRzYyRiX2RpZ2l0czsgICAgICAgICBcCiAgc3RydWN0IHsg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICB1bnNpZ25lZAkJICAgICAgIDogMzsJICB1bnNp
Z25lZCBkc2Mkdl9mbF9iaW5zY2FsZSA6IDE7ICAgICAgXAogICAgdW5zaWduZWQgZHNj
JHZfZmxfcmVkaW0gICAgOiAxOyAgICAgICB1bnNpZ25lZCBkc2Mkdl9mbF9jb2x1bW4g
ICA6IDE7ICAgICAgXAogICAgdW5zaWduZWQgZHNjJHZfZmxfY29lZmYgICAgOiAxOyAg
ICAgICB1bnNpZ25lZCBkc2Mkdl9mbF9ib3VuZHMgICA6IDE7ICAgICAgXAogIH0gZHNj
JGJfYWZsYWdzOwkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAogIHVuc2lnbmVkIGNoYXIJIGRzYyRiX2RpbWN0OwkgICAg
ICAgIHVuc2lnbmVkIGxvbmcJIGRzYyRsX2Fyc2l6ZTsJICAgICAgIFwKICAgICAgICAg
ICBjaGFyCSpkc2MkYV9hMDsJICAgICAgICAgICAgICAgICBsb25nCSBkc2MkbF9tIFtE
SU1DVF07ICAgICAgXAogIHN0cnVjdCB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgbG9u
ZyBkc2MkbF9sOyAgICAgICAgICAgICAgICAgICAgICAgICBsb25nIGRzYyRsX3U7ICAg
ICAgICAgICAgICAgICAgICAgICAgXAogIH0gZHNjJGJvdW5kcyBbRElNQ1RdOyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAp9CnR5cGVkZWYgRFNDJERFU0NSSVBUT1JfQSgxKSBmc3RyaW5ndmVjdG9yOwovKnR5
cGVkZWYgRFNDJERFU0NSSVBUT1JfQSgyKSBmc3RyaW5nYXJyYXJyOwogIHR5cGVkZWYg
RFNDJERFU0NSSVBUT1JfQSgzKSBmc3RyaW5nYXJyYXJyYXJyOyovCiNkZWZpbmUgaW5p
dGZzdHIoRixDLEVMRU1OTyxFTEVNTEVOKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiggKEYpLmRzYyRsX2Fyc2l6ZT0gICggKEYpLmRzYyR3
X2xlbmd0aCAgICAgICAgICAgICAgICAgICAgICAgID0oRUxFTUxFTikgKSAgICBcCiAg
ICAgICAgICAgICAgICAgICAgKiggKEYpLmRzYyRsX21bMF09KEYpLmRzYyRib3VuZHNb
MF0uZHNjJGxfdT0oRUxFTU5PKSAgKSwgICBcCiAgKEYpLmRzYyRhX2EwICAgID0gICgg
KEYpLmRzYyRhX3BvaW50ZXI9KEMpICkgLSAoRikuZHNjJHdfbGVuZ3RoICAgICAgICAg
ICwoRikpCgojZWxzZQojZGVmaW5lIF9OVU1fRUxFTVMgICAgICAtMQojZGVmaW5lIF9O
VU1fRUxFTV9BUkcgICAtMgojZGVmaW5lIE5VTV9FTEVNUyhBKSAgICBBLF9OVU1fRUxF
TVMKI2RlZmluZSBOVU1fRUxFTV9BUkcoQikgKl8yKEEsQiksX05VTV9FTEVNX0FSRwoj
ZGVmaW5lIFRFUk1fQ0hBUlMoQSxCKSBBLEIKI2lmbmRlZiBfX0NGX19LblIKc3RhdGlj
IGludCBudW1fZWxlbShjaGFyICpzdHJ2LCB1bnNpZ25lZCBlbGVtX2xlbiwgaW50IHRl
cm1fY2hhciwgaW50IG51bV90ZXJtKQojZWxzZQpzdGF0aWMgaW50IG51bV9lbGVtKCAg
ICAgIHN0cnYsICAgICAgICAgIGVsZW1fbGVuLCAgICAgdGVybV9jaGFyLCAgICAgbnVt
X3Rlcm0pCiAgICAgICAgICAgICAgICAgICAgY2hhciAqc3RydjsgdW5zaWduZWQgZWxl
bV9sZW47IGludCB0ZXJtX2NoYXI7IGludCBudW1fdGVybTsKI2VuZGlmCi8qIGVsZW1f
bGVuIGlzIHRoZSBudW1iZXIgb2YgY2hhcmFjdGVycyBpbiBlYWNoIGVsZW1lbnQgb2Yg
c3RydiwgdGhlIEZPUlRSQU4KdmVjdG9yIG9mIHN0cmluZ3MuIFRoZSBsYXN0IGVsZW1l
bnQgb2YgdGhlIHZlY3RvciBtdXN0IGJlZ2luIHdpdGggYXQgbGVhc3QKbnVtX3Rlcm0g
dGVybV9jaGFyIGNoYXJhY3RlcnMsIHNvIHRoYXQgdGhpcyByb3V0aW5lIGNhbiBkZXRl
cm1pbmUgaG93IAptYW55IGVsZW1lbnRzIGFyZSBpbiB0aGUgdmVjdG9yLiAqLwp7CnVu
c2lnbmVkIG51bSxpOwppZiAobnVtX3Rlcm0gPT0gX05VTV9FTEVNUyB8fCBudW1fdGVy
bSA9PSBfTlVNX0VMRU1fQVJHKSAKICByZXR1cm4gdGVybV9jaGFyOwppZiAobnVtX3Rl
cm0gPD0wKSBudW1fdGVybSA9IChpbnQpZWxlbV9sZW47CmZvciAobnVtPTA7IDsgbnVt
KyspIHsKICBmb3IgKGk9MDsgaTwodW5zaWduZWQpbnVtX3Rlcm0gJiYgKnN0cnY9PXRl
cm1fY2hhcjsgaSsrLHN0cnYrKyk7CiAgaWYgKGk9PSh1bnNpZ25lZCludW1fdGVybSkg
YnJlYWs7CiAgZWxzZSBzdHJ2ICs9IGVsZW1fbGVuLWk7Cn0KcmV0dXJuIChpbnQpbnVt
Owp9CiNlbmRpZgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKLyogICAgICAgICAg
IFVUSUxJVElFUyBGT1IgQyBUTyBVU0UgU1RSSU5HUyBJTiBGT1JUUkFOIENPTU1PTiBC
TE9DS1MgICAgICAgKi8KCi8qIEMgc3RyaW5nIFRPIEZvcnRyYW4gQ29tbW9uIEJsb2Nr
IFNUUmluZy4gKi8KLyogRElNIGlzIHRoZSBudW1iZXIgb2YgRElNZW5zaW9ucyBvZiB0
aGUgYXJyYXkgaW4gdGVybXMgb2Ygc3RyaW5ncywgbm90CiAgIGNoYXJhY3RlcnMuIGUu
Zy4gY2hhciBhWzEyXSBoYXMgRElNID0gMCwgY2hhciBhWzEyXVs0XSBoYXMgRElNID0g
MSwgZXRjLiAqLwojZGVmaW5lIEMyRkNCU1RSKENTVFIsRlNUUixESU0pICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogYzJmc3Rydigo
Y2hhciAqKUNTVFIsIChjaGFyICopRlNUUiwgc2l6ZW9mKEZTVFIpL2NmZWxlbWVudHNv
ZihGU1RSLERJTSkrMSwgICAgXAogICAgICAgICBzaXplb2YoRlNUUikrY2ZlbGVtZW50
c29mKEZTVFIsRElNKSkKCi8qIEZvcnRyYW4gQ29tbW9uIEJsb2NrIHN0cmluZyBUTyBD
IFNUUmluZy4gKi8KI2RlZmluZSBGQ0IyQ1NUUihGU1RSLENTVFIsRElNKSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIHZraWxsX3Ry
YWlsaW5nKGYyY3N0cnYoKGNoYXIgKilGU1RSLCAoY2hhciAqKUNTVFIsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9m
KEZTVFIpL2NmZWxlbWVudHNvZihGU1RSLERJTSkrMSwgICAgICAgICAgICAgICAgIFwK
ICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKEZTVFIpK2NmZWxlbWVudHNvZihG
U1RSLERJTSkpLCAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgIHNpemVv
ZihGU1RSKS9jZmVsZW1lbnRzb2YoRlNUUixESU0pKzEsICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICAgICAgICAgICAgIHNpemVvZihGU1RSKStjZmVsZW1lbnRzb2Yo
RlNUUixESU0pLCAnICcpCgojZGVmaW5lIGNmREVSRUZFUkVOQ0UwCiNkZWZpbmUgY2ZE
RVJFRkVSRU5DRTEgKgojZGVmaW5lIGNmREVSRUZFUkVOQ0UyICoqCiNkZWZpbmUgY2ZE
RVJFRkVSRU5DRTMgKioqCiNkZWZpbmUgY2ZERVJFRkVSRU5DRTQgKioqKgojZGVmaW5l
IGNmREVSRUZFUkVOQ0U1ICoqKioqCiNkZWZpbmUgY2ZlbGVtZW50c29mKEEsRCkgKHNp
emVvZihBKS9zaXplb2YoXyhjZkRFUkVGRVJFTkNFLEQpKEEpKSkKCi8qLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSovCgovKiAgICAgICAgICAgICAgIFVUSUxJVElFUyBGT1IgQyBU
TyBDQUxMIEZPUlRSQU4gU1VCUk9VVElORVMgICAgICAgICAgICAgICAqLwoKLyogRGVm
aW5lIGxvb2t1cCB0YWJsZXMgZm9yIGhvdyB0byBoYW5kbGUgdGhlIHZhcmlvdXMgdHlw
ZXMgb2YgdmFyaWFibGVzLiAgKi8KCiNpZmRlZiBPTERfVkFYQyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLyogUHJldmVudCAlQ0MtSS1QQVJBTU5PVFVTRUQuICov
CiNwcmFnbWEgbm9zdGFuZGFyZAojZW5kaWYKCiNkZWZpbmUgWlRSSU5HVl9OVU0oSSkg
ICAgICAgSQojZGVmaW5lIFpUUklOR1ZfQVJHRlAoSSkgKCooXzIoQSxJKSkpIC8qIFVu
ZG9jdW1lbnRlZC4gRm9yIFBJTlQsIGV0Yy4gKi8KI2RlZmluZSBaVFJJTkdWX0FSR0Yo
SSkgXzIoQSxJKQojaWZkZWYgQ0ZTVUJBU0ZVTgojZGVmaW5lIFpUUklOR1ZfQVJHUyhJ
KSBaVFJJTkdWX0FSR0YoSSkKI2Vsc2UKI2RlZmluZSBaVFJJTkdWX0FSR1MoSSkgXzIo
QixJKQojZW5kaWYKCiNkZWZpbmUgICAgUEJZVEVfY2ZWUChBLEIpIFBJTlRfY2ZWUChB
LEIpCiNkZWZpbmUgIFBET1VCTEVfY2ZWUChBLEIpCiNkZWZpbmUgICBQRkxPQVRfY2ZW
UChBLEIpCiNpZmRlZiBaVFJJTkdWX0FSR1NfYWxsb3dzX1B2YXJpYWJsZXMKLyogVGhp
cyBhbGxvd3MgUHZhcmlhYmxlcyBmb3IgQVJHUy4gQVJHRiBtYWNoaW5lcnkgaXMgYWJv
dmUgQVJHRlAuCiAqIEIgaXMgbm90IG5lZWRlZCBiZWNhdXNlIHRoZSB2YXJpYWJsZSBt
YXkgYmUgY2hhbmdlZCBieSB0aGUgRm9ydHJhbiByb3V0aW5lLAogKiBidXQgYmVjYXVz
ZSBCIGlzIHRoZSBvbmx5IHdheSB0byBhY2Nlc3MgYW4gYXJiaXRyYXJ5IG1hY3JvIGFy
Z3VtZW50LiAgICAgICAqLwojZGVmaW5lICAgICBQSU5UX2NmVlAoQSxCKSBpbnQgIEIg
PSAoaW50KUE7ICAgICAgICAgICAgICAvKiBGb3IgWlNUUklOR1ZfQVJHUyAqLwojZWxz
ZQojZGVmaW5lICAgICBQSU5UX2NmVlAoQSxCKQojZW5kaWYKI2RlZmluZSBQTE9HSUNB
TF9jZlZQKEEsQikgaW50ICpCOyAgICAgIC8qIFJldHVybmluZyBMT0dJQ0FMIGluIEZV
Tm4gYW5kIFNVQm4gKi8KI2RlZmluZSAgICBQTE9OR19jZlZQKEEsQikgUElOVF9jZlZQ
KEEsQikKI2RlZmluZSAgIFBTSE9SVF9jZlZQKEEsQikgUElOVF9jZlZQKEEsQikKCiNk
ZWZpbmUgICAgICAgIFZDRl9JTlRfUyhULEEsQikgXyhULFZWVlZWVlZfY2ZUWVBFKSBC
ID0gQTsKI2RlZmluZSAgICAgICAgVkNGX0lOVF9GKFQsQSxCKSBfKFQsX2NmVkNGKShB
LEIpCi8qIF9jZlZDRiB0YWJsZSBpcyBkaXJlY3RseSBtYXBwZWQgdG8gX2NmQ0NDIHRh
YmxlLiAqLwojZGVmaW5lICAgICBCWVRFX2NmVkNGKEEsQikKI2RlZmluZSAgIERPVUJM
RV9jZlZDRihBLEIpCiNpZiAhZGVmaW5lZChfX0NGX19LblIpCiNkZWZpbmUgICAgRkxP
QVRfY2ZWQ0YoQSxCKQojZWxzZQojZGVmaW5lICAgIEZMT0FUX2NmVkNGKEEsQikgRk9S
VFJBTl9SRUFMIEIgPSBBOwojZW5kaWYKI2RlZmluZSAgICAgIElOVF9jZlZDRihBLEIp
CiNkZWZpbmUgIExPR0lDQUxfY2ZWQ0YoQSxCKQojZGVmaW5lICAgICBMT05HX2NmVkNG
KEEsQikKI2RlZmluZSAgICBTSE9SVF9jZlZDRihBLEIpCgovKiA5ODA0MTYKICAgQ2Fz
dCAodm9pZCAoKikoQ0ZfTlVMTF9QUk9UTykpIGNhdXNlcyBTdW5PUyBDQyA0LjIgb2Nj
YXNpb25hbGx5IHRvIGJhcmYsCiAgIHdoaWxlIHRoZSBmb2xsb3dpbmcgZXF1aXZhbGVu
dCB0eXBlZGVmIGlzIGZpbmUuCiAgIEZvciBjb25zaXN0ZW5jeSB1c2UgdGhlIHR5cGVk
ZWYgb24gYWxsIG1hY2hpbmVzLgogKi8KdHlwZWRlZiB2b2lkICgqY2ZDQVNUX0ZVTkNU
SU9OKShDRl9OVUxMX1BST1RPKTsKCiNkZWZpbmUgVkNGKFROLEkpICAgICAgIF9JY2Y0
KDQsVixUTixfKEEsSSksXyhCLEkpLEYpCiNkZWZpbmUgVlZDRihUTixBSSxCSSkgIF9J
Y2Y0KDQsVixUTixBSSxCSSxTKQojZGVmaW5lICAgICAgICBJTlRfY2ZWKFQsQSxCLEYp
IF8oVkNGX0lOVF8sRikoVCxBLEIpCiNkZWZpbmUgICAgICAgSU5UVl9jZlYoVCxBLEIs
RikKI2RlZmluZSAgICAgIElOVFZWX2NmVihULEEsQixGKQojZGVmaW5lICAgICBJTlRW
VlZfY2ZWKFQsQSxCLEYpCiNkZWZpbmUgICAgSU5UVlZWVl9jZlYoVCxBLEIsRikKI2Rl
ZmluZSAgIElOVFZWVlZWX2NmVihULEEsQixGKQojZGVmaW5lICBJTlRWVlZWVlZfY2ZW
KFQsQSxCLEYpCiNkZWZpbmUgSU5UVlZWVlZWVl9jZlYoVCxBLEIsRikKI2RlZmluZSBQ
SU5UX2NmViggICAgICBULEEsQixGKSBfKFQsX2NmVlApKEEsQikKI2RlZmluZSBQVk9J
RF9jZlYoICAgICBULEEsQixGKQojaWYgZGVmaW5lZChhcG9sbG9Gb3J0cmFuKSB8fCBk
ZWZpbmVkKGhwdXhGb3J0cmFuODAwKSB8fCBkZWZpbmVkKEFic29mdFVOSVhGb3J0cmFu
KQojZGVmaW5lICAgIFJPVVRJTkVfY2ZWKFQsQSxCLEYpIHZvaWQgKCpCKShDRl9OVUxM
X1BST1RPKSA9IChjZkNBU1RfRlVOQ1RJT04pQTsKI2Vsc2UKI2RlZmluZSAgICBST1VU
SU5FX2NmVihULEEsQixGKQojZW5kaWYKI2RlZmluZSAgICAgU0lNUExFX2NmVihULEEs
QixGKQojaWZkZWYgdm1zRm9ydHJhbgojZGVmaW5lICAgICBTVFJJTkdfY2ZWKFQsQSxC
LEYpIHN0YXRpYyBzdHJ1Y3Qge2ZzdHJpbmcgZjsgdW5zaWduZWQgY2xlbjt9IEIgPSAg
XAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7ezAsRFNDJEtf
RFRZUEVfVCxEU0MkS19DTEFTU19TLE5VTEx9LDB9OwojZGVmaW5lICAgIFBTVFJJTkdf
Y2ZWKFQsQSxCLEYpIHN0YXRpYyBmc3RyaW5nIEI9ezAsRFNDJEtfRFRZUEVfVCxEU0Mk
S19DTEFTU19TLE5VTEx9OwojZGVmaW5lICAgIFNUUklOR1ZfY2ZWKFQsQSxCLEYpIHN0
YXRpYyBmc3RyaW5ndmVjdG9yIEIgPSAgICAgICAgICAgICAgICAgICAgICAgXAogIHtz
aXplb2YoQSksRFNDJEtfRFRZUEVfVCxEU0MkS19DTEFTU19BLE5VTEwsMCwwLHswLDAs
MSwxLDF9LDEsMCxOVUxMLDAsezEsMH19OwojZGVmaW5lICAgUFNUUklOR1ZfY2ZWKFQs
QSxCLEYpIHN0YXRpYyBmc3RyaW5ndmVjdG9yIEIgPSAgICAgICAgICAgICAgICAgICAg
ICAgXAogICAgICAgICAgezAsRFNDJEtfRFRZUEVfVCxEU0MkS19DTEFTU19BLE5VTEws
MCwwLHswLDAsMSwxLDF9LDEsMCxOVUxMLDAsezEsMH19OwojZWxzZQojZGVmaW5lICAg
ICBTVFJJTkdfY2ZWKFQsQSxCLEYpIHN0cnVjdCB7dW5zaWduZWQgaW50IGNsZW4sIGZs
ZW47fSBCOwojZGVmaW5lICAgIFNUUklOR1ZfY2ZWKFQsQSxCLEYpIHN0cnVjdCB7Y2hh
ciAqcywgKmZzOyB1bnNpZ25lZCBmbGVuO30gQjsKI2RlZmluZSAgICBQU1RSSU5HX2Nm
VihULEEsQixGKSBpbnQgICAgIEI7CiNkZWZpbmUgICBQU1RSSU5HVl9jZlYoVCxBLEIs
Rikgc3RydWN0e2NoYXIgKmZzOyB1bnNpZ25lZCBpbnQgc2l6ZW9mQSxmbGVuO31COwoj
ZW5kaWYKI2RlZmluZSAgICBaVFJJTkdWX2NmVihULEEsQixGKSAgU1RSSU5HVl9jZlYo
VCxBLEIsRikKI2RlZmluZSAgIFBaVFJJTkdWX2NmVihULEEsQixGKSBQU1RSSU5HVl9j
ZlYoVCxBLEIsRikKCi8qIE5vdGUgdGhhdCB0aGUgYWN0aW9ucyBvZiB0aGUgQSB0YWJs
ZSB3ZXJlIHBlcmZvcm1lZCBpbnNpZGUgdGhlIEFBIHRhYmxlLgogICBWQVggVWx0cml4
IHZjYywgYW5kIEhQLVVYIGNjLCBkaWRuJ3QgZXZhbHVhdGUgYXJndW1lbnRzIHRvIGZ1
bmN0aW9ucyBsZWZ0IHRvCiAgIHJpZ2h0LCBzbyB3ZSBoYWQgdG8gc3BsaXQgdGhlIG9y
aWdpbmFsIHRhYmxlIGludG8gdGhlIGN1cnJlbnQgcm9idXN0IHR3by4gKi8KI2RlZmlu
ZSBBQ0YoTkFNRSxUTixBSSxJKSAgICAgIF8oVE4sX2NmU1RSKSg0LEEsTkFNRSxJLEFJ
LF8oQixJKSwwKQojZGVmaW5lICAgREVGQVVMVF9jZkEoTSxJLEEsQikKI2RlZmluZSAg
IExPR0lDQUxfY2ZBKE0sSSxBLEIpIEI9QzJGTE9HSUNBTChCKTsKI2RlZmluZSAgUExP
R0lDQUxfY2ZBKE0sSSxBLEIpIEE9QzJGTE9HSUNBTChBKTsKI2RlZmluZSAgICBTVFJJ
TkdfY2ZBKE0sSSxBLEIpICBTVFJJTkdfY2ZDKE0sSSxBLEIsc2l6ZW9mKEEpKQojZGVm
aW5lICAgUFNUUklOR19jZkEoTSxJLEEsQikgUFNUUklOR19jZkMoTSxJLEEsQixzaXpl
b2YoQSkpCiNpZmRlZiB2bXNGb3J0cmFuCiNkZWZpbmUgIEFBVFJJTkdWX2NmQSggICAg
QSxCLCBzQSxmaWxBLHNpbEEpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiBpbml0ZnN0cihCLF9jZl9tYWxsb2MoKHNBKS0oZmlsQSkpLChmaWxBKSwoc2ls
QSktMSksICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICBjMmZzdHJ2
KEEsQi5kc2MkYV9wb2ludGVyLChzaWxBKSwoc0EpKTsKI2RlZmluZSBBUEFUUklOR1Zf
Y2ZBKCAgICBBLEIsIHNBLGZpbEEsc2lsQSkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKIGluaXRmc3RyKEIsQSwoZmlsQSksKHNpbEEpLTEpLGMyZnN0cnYo
QSxBLChzaWxBKSwoc0EpKTsKI2Vsc2UKI2RlZmluZSAgQUFUUklOR1ZfY2ZBKCAgICBB
LEIsIHNBLGZpbEEsc2lsQSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKICAgICAoQi5zPV9jZl9tYWxsb2MoKHNBKS0oZmlsQSkpLEIuZnM9YzJmc3RydihB
LEIucywoQi5mbGVuPShzaWxBKS0xKSsxLChzQSkpKTsKI2RlZmluZSBBUEFUUklOR1Zf
Y2ZBKCAgICBBLEIsIHNBLGZpbEEsc2lsQSkgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFwKIEIuZnM9YzJmc3RydihBLEEsKEIuZmxlbj0oc2lsQSktMSkrMSxC
LnNpemVvZkE9KHNBKSk7CiNlbmRpZgojZGVmaW5lICAgU1RSSU5HVl9jZkEoTSxJLEEs
QikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogICAgQUFUUklOR1ZfY2ZBKChjaGFyICopQSxCLHNpemVvZihBKSxmaXJzdGluZGV4
bGVuZ3RoKEEpLHNlY29uZGluZGV4bGVuZ3RoKEEpKQojZGVmaW5lICBQU1RSSU5HVl9j
ZkEoTSxJLEEsQikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAogICBBUEFUUklOR1ZfY2ZBKChjaGFyICopQSxCLHNpemVvZihBKSxm
aXJzdGluZGV4bGVuZ3RoKEEpLHNlY29uZGluZGV4bGVuZ3RoKEEpKQojZGVmaW5lICAg
WlRSSU5HVl9jZkEoTSxJLEEsQikgIEFBVFJJTkdWX2NmQSggKGNoYXIgKilBLEIsICAg
ICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgIChfMyhNLF9FTEVN
U18sSSkpKigoIF8zKE0sX0VMRU1MRU5fLEkpKSsxKSwgICAgICAgICAgICAgICAgXAog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXzMoTSxfRUxFTVNfLEkpKSwoXzMo
TSxfRUxFTUxFTl8sSSkpKzEpCiNkZWZpbmUgIFBaVFJJTkdWX2NmQShNLEksQSxCKSBB
UEFUUklOR1ZfY2ZBKCAoY2hhciAqKUEsQiwgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgKF8zKE0sX0VMRU1TXyxJKSkqKCggXzMoTSxfRUxFTUxF
Tl8sSSkpKzEpLCAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIChfMyhNLF9FTEVNU18sSSkpLChfMyhNLF9FTEVNTEVOXyxJKSkrMSkKCiNk
ZWZpbmUgICAgUEJZVEVfY2ZBQVAoQSxCKSAmQQojZGVmaW5lICBQRE9VQkxFX2NmQUFQ
KEEsQikgJkEKI2RlZmluZSAgIFBGTE9BVF9jZkFBUChBLEIpIEZMT0FUVlZWVlZWVl9j
ZlBQICZBCiNkZWZpbmUgICAgIFBJTlRfY2ZBQVAoQSxCKSAmQQojZGVmaW5lIFBMT0dJ
Q0FMX2NmQUFQKEEsQikgQj0gJkEgICAgICAgICAvKiBCIHVzZWQgdG8ga2VlcCBhIGNv
bW1vbiBXIHRhYmxlLiAqLwojZGVmaW5lICAgIFBMT05HX2NmQUFQKEEsQikgJkEKI2Rl
ZmluZSAgIFBTSE9SVF9jZkFBUChBLEIpICZBCgojZGVmaW5lIEFBQ0YoVE4sQUksSSxD
KSBfU0VQXyhUTixDLGNmQ09NTUEpIF9JY2YoMyxBQSxUTixBSSxfKEIsSSkpCiNkZWZp
bmUgICAgICAgIElOVF9jZkFBKFQsQSxCKSAmQgojZGVmaW5lICAgICAgIElOVFZfY2ZB
QShULEEsQikgXyhULFZWVlZWVl9jZlBQKSBBCiNkZWZpbmUgICAgICBJTlRWVl9jZkFB
KFQsQSxCKSBfKFQsVlZWVlZfY2ZQUCkgIEFbMF0KI2RlZmluZSAgICAgSU5UVlZWX2Nm
QUEoVCxBLEIpIF8oVCxWVlZWX2NmUFApICAgQVswXVswXQojZGVmaW5lICAgIElOVFZW
VlZfY2ZBQShULEEsQikgXyhULFZWVl9jZlBQKSAgICBBWzBdWzBdWzBdCiNkZWZpbmUg
ICBJTlRWVlZWVl9jZkFBKFQsQSxCKSBfKFQsVlZfY2ZQUCkgICAgIEFbMF1bMF1bMF1b
MF0KI2RlZmluZSAgSU5UVlZWVlZWX2NmQUEoVCxBLEIpIF8oVCxWX2NmUFApICAgICAg
QVswXVswXVswXVswXVswXQojZGVmaW5lIElOVFZWVlZWVlZfY2ZBQShULEEsQikgXyhU
LF9jZlBQKSAgICAgICBBWzBdWzBdWzBdWzBdWzBdWzBdCiNkZWZpbmUgICAgICAgUElO
VF9jZkFBKFQsQSxCKSBfKFQsX2NmQUFQKShBLEIpCiNkZWZpbmUgICAgICBQVk9JRF9j
ZkFBKFQsQSxCKSAodm9pZCAqKSBBCiNpZiBkZWZpbmVkKGFwb2xsb0ZvcnRyYW4pIHx8
IGRlZmluZWQoaHB1eEZvcnRyYW44MDApIHx8IGRlZmluZWQoQWJzb2Z0VU5JWEZvcnRy
YW4pCiNkZWZpbmUgICAgUk9VVElORV9jZkFBKFQsQSxCKSAmQgojZWxzZQojZGVmaW5l
ICAgIFJPVVRJTkVfY2ZBQShULEEsQikgKGNmQ0FTVF9GVU5DVElPTilBCiNlbmRpZgoj
ZGVmaW5lICAgICBTVFJJTkdfY2ZBQShULEEsQikgIFNUUklOR19jZkNDKFQsQSxCKQoj
ZGVmaW5lICAgIFBTVFJJTkdfY2ZBQShULEEsQikgUFNUUklOR19jZkNDKFQsQSxCKQoj
aWZkZWYgdm1zRm9ydHJhbgojZGVmaW5lICAgIFNUUklOR1ZfY2ZBQShULEEsQikgJkIK
I2Vsc2UKI2lmZGVmIENSQVlGb3J0cmFuCiNkZWZpbmUgICAgU1RSSU5HVl9jZkFBKFQs
QSxCKSBfY3B0b2ZjZChCLmZzLEIuZmxlbikKI2Vsc2UKI2RlZmluZSAgICBTVFJJTkdW
X2NmQUEoVCxBLEIpIEIuZnMKI2VuZGlmCiNlbmRpZgojZGVmaW5lICAgUFNUUklOR1Zf
Y2ZBQShULEEsQikgU1RSSU5HVl9jZkFBKFQsQSxCKQojZGVmaW5lICAgIFpUUklOR1Zf
Y2ZBQShULEEsQikgU1RSSU5HVl9jZkFBKFQsQSxCKQojZGVmaW5lICAgUFpUUklOR1Zf
Y2ZBQShULEEsQikgU1RSSU5HVl9jZkFBKFQsQSxCKQoKI2lmIGRlZmluZWQodm1zRm9y
dHJhbikgfHwgZGVmaW5lZChDUkFZRm9ydHJhbikKI2RlZmluZSBKQ0YoVE4sSSkKI2Rl
ZmluZSBLQ0YoVE4sSSkKI2Vsc2UKI2RlZmluZSBKQ0YoVE4sSSkgICAgXyhUTixfY2ZT
VFIpKDEsSixfKEIsSSksIDAsMCwwLDApCiNpZiBkZWZpbmVkKEFic29mdFVOSVhGb3J0
cmFuKQojZGVmaW5lICBERUZBVUxUX2NmSihCKSAsMAojZWxzZQojZGVmaW5lICBERUZB
VUxUX2NmSihCKQojZW5kaWYKI2RlZmluZSAgTE9HSUNBTF9jZkooQikgREVGQVVMVF9j
ZkooQikKI2RlZmluZSBQTE9HSUNBTF9jZkooQikgREVGQVVMVF9jZkooQikKI2RlZmlu
ZSAgIFNUUklOR19jZkooQikgLEIuZmxlbgojZGVmaW5lICBQU1RSSU5HX2NmSihCKSAs
QgojZGVmaW5lICBTVFJJTkdWX2NmSihCKSBTVFJJTkdfY2ZKKEIpCiNkZWZpbmUgUFNU
UklOR1ZfY2ZKKEIpIFNUUklOR19jZkooQikKI2RlZmluZSAgWlRSSU5HVl9jZkooQikg
U1RSSU5HX2NmSihCKQojZGVmaW5lIFBaVFJJTkdWX2NmSihCKSBTVFJJTkdfY2ZKKEIp
CgovKiBLQ0YgaXMgaWRlbnRpY2FsIHRvIERDRiwgZXhjZXB0IHRoYXQgS0NGIFpUUklO
RyBpcyBub3QgZW1wdHkuICovCiNkZWZpbmUgS0NGKFROLEkpICAgIF8oVE4sX2NmU1RS
KSgxLEtLLF8oQixJKSwgMCwwLDAsMCkKI2lmIGRlZmluZWQoQWJzb2Z0VU5JWEZvcnRy
YW4pCiNkZWZpbmUgIERFRkFVTFRfY2ZLSyhCKSAsIHVuc2lnbmVkIEIKI2Vsc2UKI2Rl
ZmluZSAgREVGQVVMVF9jZktLKEIpCiNlbmRpZgojZGVmaW5lICBMT0dJQ0FMX2NmS0so
QikgREVGQVVMVF9jZktLKEIpCiNkZWZpbmUgUExPR0lDQUxfY2ZLSyhCKSBERUZBVUxU
X2NmS0soQikKI2RlZmluZSAgIFNUUklOR19jZktLKEIpICwgdW5zaWduZWQgQgojZGVm
aW5lICBQU1RSSU5HX2NmS0soQikgU1RSSU5HX2NmS0soQikKI2RlZmluZSAgU1RSSU5H
Vl9jZktLKEIpIFNUUklOR19jZktLKEIpCiNkZWZpbmUgUFNUUklOR1ZfY2ZLSyhCKSBT
VFJJTkdfY2ZLSyhCKQojZGVmaW5lICBaVFJJTkdWX2NmS0soQikgU1RSSU5HX2NmS0so
QikKI2RlZmluZSBQWlRSSU5HVl9jZktLKEIpIFNUUklOR19jZktLKEIpCiNlbmRpZgoK
I2RlZmluZSBXQ0YoVE4sQU4sSSkgICAgICBfKFROLF9jZlNUUikoMixXLEFOLF8oQixJ
KSwgMCwwLDApCiNkZWZpbmUgIERFRkFVTFRfY2ZXKEEsQikKI2RlZmluZSAgTE9HSUNB
TF9jZlcoQSxCKQojZGVmaW5lIFBMT0dJQ0FMX2NmVyhBLEIpICpCPUYyQ0xPR0lDQUwo
KkIpOwojZGVmaW5lICAgU1RSSU5HX2NmVyhBLEIpIChBW0IuY2xlbl0hPSdcMCc/QVtC
LmNsZW5dPSdcMCc6MCk7IC8qIEE/PSJjb25zdG50IiovCiNkZWZpbmUgIFBTVFJJTkdf
Y2ZXKEEsQikga2lsbF90cmFpbGluZyhBLCcgJyk7CiNpZmRlZiB2bXNGb3J0cmFuCiNk
ZWZpbmUgIFNUUklOR1ZfY2ZXKEEsQikgX2NmX2ZyZWUoQi5kc2MkYV9wb2ludGVyKTsK
I2RlZmluZSBQU1RSSU5HVl9jZlcoQSxCKSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICB2a2lsbF90cmFpbGluZyhmMmNz
dHJ2KChjaGFyKilBLCAoY2hhciopQSwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgQi5kc2Mkd19sZW5ndGgr
MSwgQi5kc2MkbF9hcnNpemUrQi5kc2MkbF9tWzBdKSwgICAgIFwKICAgICAgICAgICAg
ICAgICAgIEIuZHNjJHdfbGVuZ3RoKzEsIEIuZHNjJGxfYXJzaXplK0IuZHNjJGxfbVsw
XSwgJyAnKTsKI2Vsc2UKI2RlZmluZSAgU1RSSU5HVl9jZlcoQSxCKSBfY2ZfZnJlZShC
LnMpOwojZGVmaW5lIFBTVFJJTkdWX2NmVyhBLEIpIHZraWxsX3RyYWlsaW5nKCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICBmMmNzdHJ2
KChjaGFyKilBLChjaGFyKilBLEIuZmxlbisxLEIuc2l6ZW9mQSksIEIuZmxlbisxLEIu
c2l6ZW9mQSwnICcpOwojZW5kaWYKI2RlZmluZSAgWlRSSU5HVl9jZlcoQSxCKSAgICAg
IFNUUklOR1ZfY2ZXKEEsQikKI2RlZmluZSBQWlRSSU5HVl9jZlcoQSxCKSAgICAgUFNU
UklOR1ZfY2ZXKEEsQikKCiNkZWZpbmUgICBOQ0YoVE4sSSxDKSAgICAgICBfU0VQXyhU
TixDLGNmQ09NTUEpIF9JY2YoMixOLFROLF8oQSxJKSwwKSAKI2RlZmluZSAgTk5DRihU
TixJLEMpICAgICAgICBVVUNGKFROLEksQykKI2RlZmluZSBOTk5DRihUTixJLEMpICAg
ICAgIF9TRVBfKFROLEMsY2ZDT0xPTikgX0ljZigyLE4sVE4sXyhBLEkpLDApIAojZGVm
aW5lICAgICAgICBJTlRfY2ZOKFQsQSkgXyhULFZWVlZWVlZfY2ZUWVBFKSAqIEEKI2Rl
ZmluZSAgICAgICBJTlRWX2NmTihULEEpIF8oVCxWVlZWVlZfY2ZUWVBFKSAgKiBBCiNk
ZWZpbmUgICAgICBJTlRWVl9jZk4oVCxBKSBfKFQsVlZWVlZfY2ZUWVBFKSAgICogQQoj
ZGVmaW5lICAgICBJTlRWVlZfY2ZOKFQsQSkgXyhULFZWVlZfY2ZUWVBFKSAgICAqIEEK
I2RlZmluZSAgICBJTlRWVlZWX2NmTihULEEpIF8oVCxWVlZfY2ZUWVBFKSAgICAgKiBB
CiNkZWZpbmUgICBJTlRWVlZWVl9jZk4oVCxBKSBfKFQsVlZfY2ZUWVBFKSAgICAgICog
QQojZGVmaW5lICBJTlRWVlZWVlZfY2ZOKFQsQSkgXyhULFZfY2ZUWVBFKSAgICAgICAq
IEEKI2RlZmluZSBJTlRWVlZWVlZWX2NmTihULEEpIF8oVCxfY2ZUWVBFKSAgICAgICAg
KiBBCiNkZWZpbmUgICAgICAgUElOVF9jZk4oVCxBKSBfKFQsX2NmVFlQRSkgICAgICAg
ICogQQojZGVmaW5lICAgICAgUFZPSURfY2ZOKFQsQSkgdm9pZCAqICAgICAgICAgICAg
ICAgIEEKI2lmIGRlZmluZWQoYXBvbGxvRm9ydHJhbikgfHwgZGVmaW5lZChocHV4Rm9y
dHJhbjgwMCkgfHwgZGVmaW5lZChBYnNvZnRVTklYRm9ydHJhbikKI2RlZmluZSAgICBS
T1VUSU5FX2NmTihULEEpIHZvaWQgKCoqQSkoQ0ZfTlVMTF9QUk9UTykKI2Vsc2UKI2Rl
ZmluZSAgICBST1VUSU5FX2NmTihULEEpIHZvaWQgKCAqQSkoQ0ZfTlVMTF9QUk9UTykK
I2VuZGlmCiNpZmRlZiB2bXNGb3J0cmFuCiNkZWZpbmUgICAgIFNUUklOR19jZk4oVCxB
KSBmc3RyaW5nICogICAgICAgICAgICAgQQojZGVmaW5lICAgIFNUUklOR1ZfY2ZOKFQs
QSkgZnN0cmluZ3ZlY3RvciAqICAgICAgIEEKI2Vsc2UKI2lmZGVmIENSQVlGb3J0cmFu
CiNkZWZpbmUgICAgIFNUUklOR19jZk4oVCxBKSBfZmNkICAgICAgICAgICAgICAgICAg
QQojZGVmaW5lICAgIFNUUklOR1ZfY2ZOKFQsQSkgX2ZjZCAgICAgICAgICAgICAgICAg
IEEKI2Vsc2UKI2RlZmluZSAgICAgU1RSSU5HX2NmTihULEEpIGNoYXIgKiAgICAgICAg
ICAgICAgICBBCiNkZWZpbmUgICAgU1RSSU5HVl9jZk4oVCxBKSBjaGFyICogICAgICAg
ICAgICAgICAgQQojZW5kaWYKI2VuZGlmCiNkZWZpbmUgICAgUFNUUklOR19jZk4oVCxB
KSAgIFNUUklOR19jZk4oVCxBKSAvKiBDUkFZIGluc2lzdHMgb24gYXJnLidzIGhlcmUu
ICovCiNkZWZpbmUgICBQTlNUUklOR19jZk4oVCxBKSAgIFNUUklOR19jZk4oVCxBKSAv
KiBDUkFZIGluc2lzdHMgb24gYXJnLidzIGhlcmUuICovCiNkZWZpbmUgICBQUFNUUklO
R19jZk4oVCxBKSAgIFNUUklOR19jZk4oVCxBKSAvKiBDUkFZIGluc2lzdHMgb24gYXJn
LidzIGhlcmUuICovCiNkZWZpbmUgICBQU1RSSU5HVl9jZk4oVCxBKSAgU1RSSU5HVl9j
Zk4oVCxBKQojZGVmaW5lICAgIFpUUklOR1ZfY2ZOKFQsQSkgIFNUUklOR1ZfY2ZOKFQs
QSkKI2RlZmluZSAgIFBaVFJJTkdWX2NmTihULEEpIFBTVFJJTkdWX2NmTihULEEpCgoK
LyogQXBvbGxvIDYuNywgQ1JBWSwgb2xkIFN1biwgVkFYL1VsdHJpeCB2Y2MvY2MgYW5k
IG5ldyB1bHRyaXgKICAgY2FuJ3QgaGFjayBtb3JlIHRoYW4gMzEgYXJnJ3MuCiAgIGUu
Zy4gdWx0cml4ID49IDQuMyBnaXZlcyBtZXNzYWdlOgogICAgICAgem93MzU+IGNjIC1j
IC1EREVDRm9ydHJhbiBjZm9ydGVzdC5jCiAgICAgICBjZmU6IEZhdGFsOiBPdXQgb2Yg
bWVtb3J5OiBjZm9ydGVzdC5jCiAgICAgICB6b3czNT4KICAgT2xkIF9faHB1eCBoYWQg
dGhlIHByb2JsZW0sIGJ1dCBuZXcgJ0hQLVVYIEEuMDkuMDMgQSA5MDAwLzczNScgaXMg
ZmluZQogICBpZiB1c2luZyAtQWEsIG90aGVyd2lzZSB3ZSBoYXZlIGEgcHJvYmxlbS4K
ICovCiNpZm5kZWYgTUFYX1BSRVBST19BUkdTCiNpZiAhZGVmaW5lZChfX0dOVUNfXykg
JiYgKGRlZmluZWQoVkFYVWx0cml4KSB8fCBkZWZpbmVkKF9fQ0ZfX0FQT0xMTzY3KSB8
fCAoZGVmaW5lZChzdW4pJiYhZGVmaW5lZChfX3N1bikpIHx8IGRlZmluZWQoX0NSQVkp
IHx8IGRlZmluZWQoX191bHRyaXhfXykgfHwgKGRlZmluZWQoX19ocHV4KSYmZGVmaW5l
ZChfX0NGX19LblIpKSkKI2RlZmluZSBNQVhfUFJFUFJPX0FSR1MgMzEKI2Vsc2UKI2Rl
ZmluZSBNQVhfUFJFUFJPX0FSR1MgOTkKI2VuZGlmCiNlbmRpZgoKI2lmIGRlZmluZWQo
QWJzb2Z0VU5JWEZvcnRyYW4pIAovKiBJbiBhZGRpdGlvbiB0byBleHBsaWNpdCBBYnNv
ZnQgc3R1ZmYsIG9ubHkgQWJzb2Z0IHJlcXVpcmVzOgogICAtIERFRkFVTFQgY29taW5n
IGZyb20gX2NmU1RSLgogICAgIERFRkFVTFQgY291bGQgaGF2ZSBiZWVuIGNhbGxlZCBl
LmcuIElOVCwgYnV0IGtlZXAgaXQgZm9yIGNsYXJpdHkuCiAgIC0gTSB0ZXJtIGluIENG
QVJHVDE0IGFuZCBDRkFSR1QxNEZTLgogKi8KI2RlZmluZSBBQlNPRlRfY2YxKFQwKSBf
KFQwLF9jZlNUUikoMCxBQlNPRlQxLDAsMCwwLDAsMCkKI2RlZmluZSBBQlNPRlRfY2Yy
KFQwKSBfKFQwLF9jZlNUUikoMCxBQlNPRlQyLDAsMCwwLDAsMCkKI2RlZmluZSBBQlNP
RlRfY2YzKFQwKSBfKFQwLF9jZlNUUikoMCxBQlNPRlQzLDAsMCwwLDAsMCkKI2RlZmlu
ZSBERUZBVUxUX2NmQUJTT0ZUMQojZGVmaW5lIExPR0lDQUxfY2ZBQlNPRlQxCiNkZWZp
bmUgIFNUUklOR19jZkFCU09GVDEgLE1BWF9MRU5fRk9SVFJBTl9GVU5DVElPTl9TVFJJ
TkcKI2RlZmluZSBERUZBVUxUX2NmQUJTT0ZUMgojZGVmaW5lIExPR0lDQUxfY2ZBQlNP
RlQyCiNkZWZpbmUgIFNUUklOR19jZkFCU09GVDIgLHVuc2lnbmVkIEQwCiNkZWZpbmUg
REVGQVVMVF9jZkFCU09GVDMKI2RlZmluZSBMT0dJQ0FMX2NmQUJTT0ZUMwojZGVmaW5l
ICBTVFJJTkdfY2ZBQlNPRlQzICxEMAojZWxzZQojZGVmaW5lIEFCU09GVF9jZjEoVDAp
CiNkZWZpbmUgQUJTT0ZUX2NmMihUMCkKI2RlZmluZSBBQlNPRlRfY2YzKFQwKQojZW5k
aWYKCi8qIF9aIGludHJvZHVjZWQgdG8gY2ljdW12ZW50IElCTSBhbmQgSFAgc2lsbHkg
cHJlcHJvY2Vzc29yIHdhcm5pbmcuCiAgIGUuZy4gIk1hY3JvIENGQVJHVDE0IGludm9r
ZWQgd2l0aCBhIG51bGwgYXJndW1lbnQuIgogKi8KI2RlZmluZSBfWgoKI2RlZmluZSAg
Q0ZBUkdUMTRTKFMsVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQs
VEUpICAgICAgICAgICAgICAgIFwKIFMoVDEsMSkgICBTKFQyLDIpICAgUyhUMywzKSAg
ICBTKFQ0LDQpICAgIFMoVDUsNSkgICAgUyhUNiw2KSAgICBTKFQ3LDcpICAgICAgIFwK
IFMoVDgsOCkgICBTKFQ5LDkpICAgUyhUQSwxMCkgICBTKFRCLDExKSAgIFMoVEMsMTIp
ICAgUyhURCwxMykgICBTKFRFLDE0KQojZGVmaW5lICBDRkFSR1QyN1MoUyxUMSxUMixU
MyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixU
SyxUTCxUTSxUTixUTyxUUCxUUSxUUikgXAogUyhUMSwxKSAgIFMoVDIsMikgICBTKFQz
LDMpICAgIFMoVDQsNCkgICAgUyhUNSw1KSAgICBTKFQ2LDYpICAgIFMoVDcsNykgICAg
ICAgXAogUyhUOCw4KSAgIFMoVDksOSkgICBTKFRBLDEwKSAgIFMoVEIsMTEpICAgUyhU
QywxMikgICBTKFRELDEzKSAgIFMoVEUsMTQpICAgICAgXAogUyhURiwxNSkgIFMoVEcs
MTYpICBTKFRILDE3KSAgIFMoVEksMTgpICAgUyhUSiwxOSkgICBTKFRLLDIwKSAgIFMo
VEwsMjEpICAgICAgXAogUyhUTSwyMikgIFMoVE4sMjMpICBTKFRPLDI0KSAgIFMoVFAs
MjUpICAgUyhUUSwyNikgICBTKFRSLDI3KQoKI2RlZmluZSAgQ0ZBUkdUMTRGUyhGLFMs
TSxUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSkgICAgICAg
ICAgIFwKIEYoVDEsMSwwKSBGKFQyLDIsMSkgRihUMywzLDEpICBGKFQ0LDQsMSkgIEYo
VDUsNSwxKSAgRihUNiw2LDEpICBGKFQ3LDcsMSkgICAgIFwKIEYoVDgsOCwxKSBGKFQ5
LDksMSkgRihUQSwxMCwxKSBGKFRCLDExLDEpIEYoVEMsMTIsMSkgRihURCwxMywxKSBG
KFRFLDE0LDEpICAgIFwKIE0gICAgICAgQ0ZBUkdUMTRTKFMsVDEsVDIsVDMsVDQsVDUs
VDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpCiNkZWZpbmUgIENGQVJHVDI3RlMoRixT
LE0sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcs
VEgsVEksVEosVEssVEwsVE0sVE4sVE8sVFAsVFEsVFIpIFwKIEYoVDEsMSwwKSAgRihU
MiwyLDEpICBGKFQzLDMsMSkgIEYoVDQsNCwxKSAgRihUNSw1LDEpICBGKFQ2LDYsMSkg
IEYoVDcsNywxKSAgIFwKIEYoVDgsOCwxKSAgRihUOSw5LDEpICBGKFRBLDEwLDEpIEYo
VEIsMTEsMSkgRihUQywxMiwxKSBGKFRELDEzLDEpIEYoVEUsMTQsMSkgIFwKIEYoVEYs
MTUsMSkgRihURywxNiwxKSBGKFRILDE3LDEpIEYoVEksMTgsMSkgRihUSiwxOSwxKSBG
KFRLLDIwLDEpIEYoVEwsMjEsMSkgIFwKIEYoVE0sMjIsMSkgRihUTiwyMywxKSBGKFRP
LDI0LDEpIEYoVFAsMjUsMSkgRihUUSwyNiwxKSBGKFRSLDI3LDEpICAgICAgICAgICAg
IFwKIE0gICAgICAgQ0ZBUkdUMjdTKFMsVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDks
VEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEssVEwsVE0sVE4sVE8sVFAsVFEs
VFIpCgojaWYgIShkZWZpbmVkKFBvd2VyU3RhdGlvbkZvcnRyYW4pfHxkZWZpbmVkKGhw
dXhGb3J0cmFuODAwKSkKLyogIE9sZCBDRkFSR1QxNCAtPiBDRkFSR1QxNEZTIGFzIHNl
ZW4gYmVsb3csIGZvciBBYnNvZnQgY3Jvc3MtY29tcGlsZSB5aWVsZHM6CiAgICAgIFN1
bk9TPiBjYyAtYyAtWGEgLURBYnNvZnRVTklYRm9ydHJhbiBjLmMKICAgICAgImMuYyIs
IGxpbmUgNDA2OiB3YXJuaW5nOiBhcmd1bWVudCBtaXNtYXRjaAogICAgSGF2ZW4ndCBj
aGVja2VkIGlmIHRoaXMgaXMgQU5TSSBDIG9yIGEgU3VuT1MgYnVnLiBTdW5PUyAtWHMg
d29ya3Mgb2suCiAgICBCZWhhdmlvciBpcyBtb3N0IGNsZWFybHkgc2VlbiBpbiBleGFt
cGxlOgogICAgICAjZGVmaW5lIEEgMSAsIDIKICAgICAgI2RlZmluZSAgQyhYLFksWikg
eD1YLiB5PVkuIHo9Wi4KICAgICAgI2RlZmluZSAgRChYLFksWikgQyhYLFksWikKICAg
ICAgRCh4LEEseikKICAgIE91dHB1dCBmcm9tIHByZXByb2Nlc3NvciBpczogeCA9IHgg
LiB5ID0gMSAuIHogPSAyIC4KICNkZWZpbmUgQ0ZBUkdUMTQoRixTLE0sVDEsVDIsVDMs
VDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpIFwKICAgICAgIENGQVJHVDE0
RlMoRixTLE0sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUp
CiovCiNkZWZpbmUgIENGQVJHVDE0KEYsUyxNLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4
LFQ5LFRBLFRCLFRDLFRELFRFKSAgICAgICAgICAgICBcCiBGKFQxLDEsMCkgRihUMiwy
LDEpIEYoVDMsMywxKSAgRihUNCw0LDEpICBGKFQ1LDUsMSkgIEYoVDYsNiwxKSAgRihU
Nyw3LDEpICAgICBcCiBGKFQ4LDgsMSkgRihUOSw5LDEpIEYoVEEsMTAsMSkgRihUQiwx
MSwxKSBGKFRDLDEyLDEpIEYoVEQsMTMsMSkgRihURSwxNCwxKSAgICBcCiBNICAgICAg
IENGQVJHVDE0UyhTLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRE
LFRFKQojZGVmaW5lICBDRkFSR1QyNyhGLFMsTSxUMSxUMixUMyxUNCxUNSxUNixUNyxU
OCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTyxU
UCxUUSxUUikgXAogRihUMSwxLDApICBGKFQyLDIsMSkgIEYoVDMsMywxKSAgRihUNCw0
LDEpICBGKFQ1LDUsMSkgIEYoVDYsNiwxKSAgRihUNyw3LDEpICAgXAogRihUOCw4LDEp
ICBGKFQ5LDksMSkgIEYoVEEsMTAsMSkgRihUQiwxMSwxKSBGKFRDLDEyLDEpIEYoVEQs
MTMsMSkgRihURSwxNCwxKSAgXAogRihURiwxNSwxKSBGKFRHLDE2LDEpIEYoVEgsMTcs
MSkgRihUSSwxOCwxKSBGKFRKLDE5LDEpIEYoVEssMjAsMSkgRihUTCwyMSwxKSAgXAog
RihUTSwyMiwxKSBGKFROLDIzLDEpIEYoVE8sMjQsMSkgRihUUCwyNSwxKSBGKFRRLDI2
LDEpIEYoVFIsMjcsMSkgICAgICAgICAgICAgXAogTSAgICAgICBDRkFSR1QyN1MoUyxU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxU
SSxUSixUSyxUTCxUTSxUTixUTyxUUCxUUSxUUikKCiNkZWZpbmUgIENGQVJHVDIwKEYs
UyxUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxU
SCxUSSxUSixUSykgXAogRihUMSwxLDApICBGKFQyLDIsMSkgIEYoVDMsMywxKSAgRihU
NCw0LDEpICBGKFQ1LDUsMSkgIEYoVDYsNiwxKSAgRihUNyw3LDEpICAgXAogRihUOCw4
LDEpICBGKFQ5LDksMSkgIEYoVEEsMTAsMSkgRihUQiwxMSwxKSBGKFRDLDEyLDEpIEYo
VEQsMTMsMSkgRihURSwxNCwxKSAgXAogRihURiwxNSwxKSBGKFRHLDE2LDEpIEYoVEgs
MTcsMSkgRihUSSwxOCwxKSBGKFRKLDE5LDEpIEYoVEssMjAsMSkgICAgICAgICAgICAg
XAogUyhUMSwxKSAgICBTKFQyLDIpICAgIFMoVDMsMykgICAgUyhUNCw0KSAgICBTKFQ1
LDUpICAgIFMoVDYsNikgICAgUyhUNyw3KSAgICAgXAogUyhUOCw4KSAgICBTKFQ5LDkp
ICAgIFMoVEEsMTApICAgUyhUQiwxMSkgICBTKFRDLDEyKSAgIFMoVEQsMTMpICAgUyhU
RSwxNCkgICAgXAogUyhURiwxNSkgICBTKFRHLDE2KSAgIFMoVEgsMTcpICAgUyhUSSwx
OCkgICBTKFRKLDE5KSAgIFMoVEssMjApCiNkZWZpbmUgQ0ZBUkdUQTE0KEYsUyxUMSxU
MixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxBMSxBMixBMyxBNCxB
NSxBNixBNyxBOCxBOSxBQSxBQixBQyxBRCxBRSkgXAogRihUMSxBMSwxLDApICBGKFQy
LEEyLDIsMSkgIEYoVDMsQTMsMywxKSBGKFQ0LEE0LDQsMSkgIEYoVDUsQTUsNSwxKSAg
RihUNixBNiw2LDEpICBcCiBGKFQ3LEE3LDcsMSkgIEYoVDgsQTgsOCwxKSAgRihUOSxB
OSw5LDEpIEYoVEEsQUEsMTAsMSkgRihUQixBQiwxMSwxKSBGKFRDLEFDLDEyLDEpIFwK
IEYoVEQsQUQsMTMsMSkgRihURSxBRSwxNCwxKSBTKFQxLDEpICAgICAgUyhUMiwyKSAg
ICAgICBTKFQzLDMpICAgICAgIFMoVDQsNCkgICAgICAgXAogUyhUNSw1KSAgICAgICBT
KFQ2LDYpICAgICAgIFMoVDcsNykgICAgICBTKFQ4LDgpICAgICAgIFMoVDksOSkgICAg
ICAgUyhUQSwxMCkgICAgICBcCiBTKFRCLDExKSAgICAgIFMoVEMsMTIpICAgICAgUyhU
RCwxMykgICAgIFMoVEUsMTQpCiNpZiBNQVhfUFJFUFJPX0FSR1M+MzEKI2RlZmluZSBD
RkFSR1RBMjAoRixTLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRE
LFRFLFRGLFRHLFRILFRJLFRKLFRLLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFB
LEFCLEFDLEFELEFFLEFGLEFHLEFILEFJLEFKLEFLKSBcCiBGKFQxLEExLDEsMCkgIEYo
VDIsQTIsMiwxKSAgRihUMyxBMywzLDEpICBGKFQ0LEE0LDQsMSkgIEYoVDUsQTUsNSwx
KSAgRihUNixBNiw2LDEpICBcCiBGKFQ3LEE3LDcsMSkgIEYoVDgsQTgsOCwxKSAgRihU
OSxBOSw5LDEpICBGKFRBLEFBLDEwLDEpIEYoVEIsQUIsMTEsMSkgRihUQyxBQywxMiwx
KSBcCiBGKFRELEFELDEzLDEpIEYoVEUsQUUsMTQsMSkgRihURixBRiwxNSwxKSBGKFRH
LEFHLDE2LDEpIEYoVEgsQUgsMTcsMSkgRihUSSxBSSwxOCwxKSBcCiBGKFRKLEFKLDE5
LDEpIEYoVEssQUssMjAsMSkgUyhUMSwxKSAgICAgICBTKFQyLDIpICAgICAgIFMoVDMs
MykgICAgICAgUyhUNCw0KSAgICAgICBcCiBTKFQ1LDUpICAgICAgIFMoVDYsNikgICAg
ICAgUyhUNyw3KSAgICAgICBTKFQ4LDgpICAgICAgIFMoVDksOSkgICAgICAgUyhUQSwx
MCkgICAgICBcCiBTKFRCLDExKSAgICAgIFMoVEMsMTIpICAgICAgUyhURCwxMykgICAg
ICBTKFRFLDE0KSAgICAgIFMoVEYsMTUpICAgICAgUyhURywxNikgICAgICBcCiBTKFRI
LDE3KSAgICAgIFMoVEksMTgpICAgICAgUyhUSiwxOSkgICAgICBTKFRLLDIwKQojZW5k
aWYKI2Vsc2UKI2RlZmluZSAgQ0ZBUkdUMTQoRixTLE0sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpICAgICAgICAgICAgIFwKIEYoVDEsMSwwKSBT
KFQxLDEpIEYoVDIsMiwxKSAgUyhUMiwyKSAgRihUMywzLDEpICBTKFQzLDMpICBGKFQ0
LDQsMSkgIFMoVDQsNCkgIFwKIEYoVDUsNSwxKSBTKFQ1LDUpIEYoVDYsNiwxKSAgUyhU
Niw2KSAgRihUNyw3LDEpICBTKFQ3LDcpICBGKFQ4LDgsMSkgIFMoVDgsOCkgIFwKIEYo
VDksOSwxKSBTKFQ5LDkpIEYoVEEsMTAsMSkgUyhUQSwxMCkgRihUQiwxMSwxKSBTKFRC
LDExKSBGKFRDLDEyLDEpIFMoVEMsMTIpIFwKIEYoVEQsMTMsMSkgUyhURCwxMykgRihU
RSwxNCwxKSBTKFRFLDE0KQojZGVmaW5lICBDRkFSR1QyNyhGLFMsTSxUMSxUMixUMyxU
NCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxU
TCxUTSxUTixUTyxUUCxUUSxUUikgXAogRihUMSwxLDApICBTKFQxLDEpICBGKFQyLDIs
MSkgIFMoVDIsMikgIEYoVDMsMywxKSAgUyhUMywzKSAgRihUNCw0LDEpICBTKFQ0LDQp
ICBcCiBGKFQ1LDUsMSkgIFMoVDUsNSkgIEYoVDYsNiwxKSAgUyhUNiw2KSAgRihUNyw3
LDEpICBTKFQ3LDcpICBGKFQ4LDgsMSkgIFMoVDgsOCkgIFwKIEYoVDksOSwxKSAgUyhU
OSw5KSAgRihUQSwxMCwxKSBTKFRBLDEwKSBGKFRCLDExLDEpIFMoVEIsMTEpIEYoVEMs
MTIsMSkgUyhUQywxMikgXAogRihURCwxMywxKSBTKFRELDEzKSBGKFRFLDE0LDEpIFMo
VEUsMTQpIEYoVEYsMTUsMSkgUyhURiwxNSkgRihURywxNiwxKSBTKFRHLDE2KSBcCiBG
KFRILDE3LDEpIFMoVEgsMTcpIEYoVEksMTgsMSkgUyhUSSwxOCkgRihUSiwxOSwxKSBT
KFRKLDE5KSBGKFRLLDIwLDEpIFMoVEssMjApICBcCiBGKFRMLDIxLDEpIFMoVEwsMjEp
IEYoVE0sMjIsMSkgUyhUTSwyMikgRihUTiwyMywxKSBTKFROLDIzKSBGKFRPLDI0LDEp
IFMoVE8sMjQpICBcCiBGKFRQLDI1LDEpIFMoVFAsMjUpIEYoVFEsMjYsMSkgUyhUUSwy
NikgRihUUiwyNywxKSBTKFRSLDI3KQoKI2RlZmluZSAgQ0ZBUkdUMjAoRixTLFQxLFQy
LFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRK
LFRLKSBcCiBGKFQxLDEsMCkgIFMoVDEsMSkgIEYoVDIsMiwxKSAgUyhUMiwyKSAgRihU
MywzLDEpICBTKFQzLDMpICBGKFQ0LDQsMSkgIFMoVDQsNCkgIFwKIEYoVDUsNSwxKSAg
UyhUNSw1KSAgRihUNiw2LDEpICBTKFQ2LDYpICBGKFQ3LDcsMSkgIFMoVDcsNykgIEYo
VDgsOCwxKSAgUyhUOCw4KSAgXAogRihUOSw5LDEpICBTKFQ5LDkpICBGKFRBLDEwLDEp
IFMoVEEsMTApIEYoVEIsMTEsMSkgUyhUQiwxMSkgRihUQywxMiwxKSBTKFRDLDEyKSBc
CiBGKFRELDEzLDEpIFMoVEQsMTMpIEYoVEUsMTQsMSkgUyhURSwxNCkgRihURiwxNSwx
KSBTKFRGLDE1KSBGKFRHLDE2LDEpIFMoVEcsMTYpIFwKIEYoVEgsMTcsMSkgUyhUSCwx
NykgRihUSSwxOCwxKSBTKFRJLDE4KSBGKFRKLDE5LDEpIFMoVEosMTkpIEYoVEssMjAs
MSkgUyhUSywyMCkKI2RlZmluZSBDRkFSR1RBMTQoRixTLFQxLFQyLFQzLFQ0LFQ1LFQ2
LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5
LEFBLEFCLEFDLEFELEFFKSBcCiBGKFQxLEExLDEsMCkgIFMoVDEsMSkgIEYoVDIsQTIs
MiwxKSAgUyhUMiwyKSAgRihUMyxBMywzLDEpICBTKFQzLDMpICAgICAgICAgICBcCiBG
KFQ0LEE0LDQsMSkgIFMoVDQsNCkgIEYoVDUsQTUsNSwxKSAgUyhUNSw1KSAgRihUNixB
Niw2LDEpICBTKFQ2LDYpICAgICAgICAgICBcCiBGKFQ3LEE3LDcsMSkgIFMoVDcsNykg
IEYoVDgsQTgsOCwxKSAgUyhUOCw4KSAgRihUOSxBOSw5LDEpICBTKFQ5LDkpICAgICAg
ICAgICBcCiBGKFRBLEFBLDEwLDEpIFMoVEEsMTApIEYoVEIsQUIsMTEsMSkgUyhUQiwx
MSkgRihUQyxBQywxMiwxKSBTKFRDLDEyKSAgICAgICAgICBcCiBGKFRELEFELDEzLDEp
IFMoVEQsMTMpIEYoVEUsQUUsMTQsMSkgUyhURSwxNCkKI2lmIE1BWF9QUkVQUk9fQVJH
Uz4zMQojZGVmaW5lIENGQVJHVEEyMChGLFMsVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgs
VDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEssQTEsQTIsQTMsQTQsQTUs
QTYsQTcsQTgsQTksQUEsQUIsQUMsQUQsQUUsQUYsQUcsQUgsQUksQUosQUspIFwKIEYo
VDEsQTEsMSwwKSAgUyhUMSwxKSAgRihUMixBMiwyLDEpICBTKFQyLDIpICBGKFQzLEEz
LDMsMSkgIFMoVDMsMykgICAgICAgICAgIFwKIEYoVDQsQTQsNCwxKSAgUyhUNCw0KSAg
RihUNSxBNSw1LDEpICBTKFQ1LDUpICBGKFQ2LEE2LDYsMSkgIFMoVDYsNikgICAgICAg
ICAgIFwKIEYoVDcsQTcsNywxKSAgUyhUNyw3KSAgRihUOCxBOCw4LDEpICBTKFQ4LDgp
ICBGKFQ5LEE5LDksMSkgIFMoVDksOSkgICAgICAgICAgIFwKIEYoVEEsQUEsMTAsMSkg
UyhUQSwxMCkgRihUQixBQiwxMSwxKSBTKFRCLDExKSBGKFRDLEFDLDEyLDEpIFMoVEMs
MTIpICAgICAgICAgIFwKIEYoVEQsQUQsMTMsMSkgUyhURCwxMykgRihURSxBRSwxNCwx
KSBTKFRFLDE0KSBGKFRGLEFGLDE1LDEpIFMoVEYsMTUpICAgICAgICAgIFwKIEYoVEcs
QUcsMTYsMSkgUyhURywxNikgRihUSCxBSCwxNywxKSBTKFRILDE3KSBGKFRJLEFJLDE4
LDEpIFMoVEksMTgpICAgICAgICAgIFwKIEYoVEosQUosMTksMSkgUyhUSiwxOSkgRihU
SyxBSywyMCwxKSBTKFRLLDIwKSAgICAgICAgICAgICAgICAKI2VuZGlmCiNlbmRpZgoK
CiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMSggVU4sTE4sVDEpIFwKICAgICAgICBQUk9U
T0NDQUxMU0ZTVUIxNChVTixMTixUMSxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0Zf
MCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIFBST1RP
Q0NBTExTRlNVQjIoIFVOLExOLFQxLFQyKSBcCiAgICAgICAgUFJPVE9DQ0FMTFNGU1VC
MTQoVU4sTE4sVDEsVDIsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxD
Rl8wLENGXzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMygg
VU4sTE4sVDEsVDIsVDMpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIxNChVTixMTixU
MSxUMixUMyxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0Zf
MCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCNCggVU4sTE4sVDEsVDIs
VDMsVDQpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxU
NCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8w
KQojZGVmaW5lIFBST1RPQ0NBTExTRlNVQjUoIFVOLExOLFQxLFQyLFQzLFQ0LFQ1KSBc
CiAgICAgICAgUFJPVE9DQ0FMTFNGU1VCMTQoVU4sTE4sVDEsVDIsVDMsVDQsVDUsQ0Zf
MCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUg
UFJPVE9DQ0FMTFNGU1VCNiggVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYpIFwKICAgICAg
ICBQUk9UT0NDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixDRl8wLENG
XzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FM
TFNGU1VCNyggVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcpIFwKICAgICAgICBQUk9U
T0NDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxDRl8wLENGXzAs
Q0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIFBST1RPQ0NBTExTRlNVQjgo
IFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4KSBcCiAgICAgICAgUFJPVE9DQ0FM
TFNGU1VCMTQoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsQ0ZfMCxDRl8wLENG
XzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCOSggVU4sTE4s
VDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDkpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZT
VUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxDRl8wLENGXzAsQ0Zf
MCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMTAoVU4sTE4sVDEsVDIs
VDMsVDQsVDUsVDYsVDcsVDgsVDksVEEpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIx
NChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxDRl8wLENGXzAsQ0Zf
MCxDRl8wKQojZGVmaW5lIFBST1RPQ0NBTExTRlNVQjExKFVOLExOLFQxLFQyLFQzLFQ0
LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCKSBcCiAgICAgICAgUFJPVE9DQ0FMTFNGU1VCMTQo
VU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsQ0ZfMCxDRl8wLENG
XzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMTIoVU4sTE4sVDEsVDIsVDMsVDQsVDUs
VDYsVDcsVDgsVDksVEEsVEIsVEMpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIxNChV
TixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxDRl8wLENGXzAp
CiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMTMoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsVDksVEEsVEIsVEMsVEQpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIxNChV
TixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxDRl8wKQoK
CiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMTUoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZT
VUIyMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxURixDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNG
U1VCMTYoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQs
VEUsVEYsVEcpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIyMChVTixMTixUMSxUMixU
MyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxDRl8wLENGXzAs
Q0ZfMCxDRl8wKQojZGVmaW5lIFBST1RPQ0NBTExTRlNVQjE3KFVOLExOLFQxLFQyLFQz
LFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRIKSBcCiAgICAg
ICAgUFJPVE9DQ0FMTFNGU1VCMjAoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgs
VDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUg
UFJPVE9DQ0FMTFNGU1VCMTgoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDks
VEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEkpIFwKICAgICAgICBQUk9UT0NDQUxMU0ZT
VUIyMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxURixURyxUSCxUSSxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMTko
VU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYs
VEcsVEgsVEksVEopIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIyMChVTixMTixUMSxU
MixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxU
SixDRl8wKQoKCiNpZm5kZWYgRkNBTExTQ19RVUFMSUZJRVIKI2lmZGVmIFZJU1VBTF9D
UExVU1BMVVMKI2RlZmluZSBGQ0FMTFNDX1FVQUxJRklFUiBfX3N0ZGNhbGwKI2Vsc2UK
I2RlZmluZSBGQ0FMTFNDX1FVQUxJRklFUgojZW5kaWYKI2VuZGlmCgojaWZkZWYgX19j
cGx1c3BsdXMKI2RlZmluZSBDRmV4dGVybiBleHRlcm4gIkMiCiNlbHNlCiNkZWZpbmUg
Q0ZleHRlcm4gZXh0ZXJuCiNlbmRpZgoKCiNpZmRlZiBDRlNVQkFTRlVOCiNkZWZpbmUg
UFJPVE9DQ0FMTFNGU1VCMChVTixMTikgXAogICBQUk9UT0NDQUxMU0ZGVU4wKCBWT0lE
LFVOLExOKQojZGVmaW5lIFBST1RPQ0NBTExTRlNVQjE0KFVOLExOLFQxLFQyLFQzLFQ0
LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFKSBcCiAgIFBST1RPQ0NBTExTRkZV
TjE0KFZPSUQsVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMs
VEQsVEUpCiNkZWZpbmUgUFJPVE9DQ0FMTFNGU1VCMjAoVU4sTE4sVDEsVDIsVDMsVDQs
VDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEspXAog
ICBQUk9UT0NDQUxMU0ZGVU4yMChWT0lELFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLFRLKQojZWxzZQovKiBO
b3RlOiBQcmV2ZW50IGNvbXBpbGVyIHdhcm5pbmdzLCBudWxsICNkZWZpbmUgUFJPVE9D
Q0FMTFNGU1VCMTQvMjAgYWZ0ZXIgCiAgICNpbmNsdWRlLWluZyBjZm9ydHJhbi5oIGlm
IGNhbGxpbmcgdGhlIEZPUlRSQU4gd3JhcHBlciB3aXRoaW4gdGhlIHNhbWUgCiAgIHNv
dXJjZSBjb2RlIHdoZXJlIHRoZSB3cmFwcGVyIGlzIGNyZWF0ZWQuICovCiNkZWZpbmUg
UFJPVE9DQ0FMTFNGU1VCMChVTixMTikgICAgIENGZXh0ZXJuIHZvaWQgRkNBTExTQ19R
VUFMSUZJRVIgQ0ZDXyhVTixMTikoKTsKI2lmbmRlZiBfX0NGX19LblIKI2RlZmluZSBQ
Uk9UT0NDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSkgXAogQ0ZleHRlcm4gdm9pZCBGQ0FMTFNDX1FVQUxJRklFUiBD
RkNfKFVOLExOKSggQ0ZBUkdUMTQoTkNGLEtDRixfWixUMSxUMixUMyxUNCxUNSxUNixU
NyxUOCxUOSxUQSxUQixUQyxURCxURSkgKTsKI2RlZmluZSBQUk9UT0NDQUxMU0ZTVUIy
MChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxU
RixURyxUSCxUSSxUSixUSylcCiBDRmV4dGVybiB2b2lkIEZDQUxMU0NfUVVBTElGSUVS
IENGQ18oVU4sTE4pKCBDRkFSR1QyMChOQ0YsS0NGLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLFRLKSApOwojZWxzZQoj
ZGVmaW5lIFBST1RPQ0NBTExTRlNVQjE0KFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LFQ4LFQ5LFRBLFRCLFRDLFRELFRFKSAgICAgXAogICAgICAgICBQUk9UT0NDQUxMU0ZT
VUIwKFVOLExOKQojZGVmaW5lIFBST1RPQ0NBTExTRlNVQjIwKFVOLExOLFQxLFQyLFQz
LFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLFRL
KSBcCiAgICAgICAgIFBST1RPQ0NBTExTRlNVQjAoVU4sTE4pCiNlbmRpZgojZW5kaWYK
CgojaWZkZWYgT0xEX1ZBWEMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
LyogQWxsb3cgJUNDLUktUEFSQU1OT1RVU0VELiAqLwojcHJhZ21hIHN0YW5kYXJkCiNl
bmRpZgoKCiNkZWZpbmUgQ0NBTExTRlNVQjEoIFVOLExOLFQxLCAgICAgICAgICAgICAg
ICAgICAgICAgIEExKSAgICAgICAgIFwKICAgICAgICBDQ0FMTFNGU1VCNSAoVU4sTE4s
VDEsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxBMSwwLDAsMCwwKQojZGVmaW5lIENDQUxMU0ZT
VUIyKCBVTixMTixUMSxUMiwgICAgICAgICAgICAgICAgICAgICBBMSxBMikgICAgICBc
CiAgICAgICAgQ0NBTExTRlNVQjUgKFVOLExOLFQxLFQyLENGXzAsQ0ZfMCxDRl8wLEEx
LEEyLDAsMCwwKQojZGVmaW5lIENDQUxMU0ZTVUIzKCBVTixMTixUMSxUMixUMywgICAg
ICAgICAgICAgICAgICBBMSxBMixBMykgICBcCiAgICAgICAgQ0NBTExTRlNVQjUgKFVO
LExOLFQxLFQyLFQzLENGXzAsQ0ZfMCxBMSxBMixBMywwLDApCiNkZWZpbmUgQ0NBTExT
RlNVQjQoIFVOLExOLFQxLFQyLFQzLFQ0LCAgICAgICAgICAgICAgIEExLEEyLEEzLEE0
KVwKICAgICAgICBDQ0FMTFNGU1VCNSAoVU4sTE4sVDEsVDIsVDMsVDQsQ0ZfMCxBMSxB
MixBMyxBNCwwKQojZGVmaW5lIENDQUxMU0ZTVUI1KCBVTixMTixUMSxUMixUMyxUNCxU
NSwgICAgICAgICAgICBBMSxBMixBMyxBNCxBNSkgICAgICAgICAgXAogICAgICAgIEND
QUxMU0ZTVUIxMChVTixMTixUMSxUMixUMyxUNCxUNSxDRl8wLENGXzAsQ0ZfMCxDRl8w
LENGXzAsQTEsQTIsQTMsQTQsQTUsMCwwLDAsMCwwKQojZGVmaW5lIENDQUxMU0ZTVUI2
KCBVTixMTixUMSxUMixUMyxUNCxUNSxUNiwgICAgICAgICBBMSxBMixBMyxBNCxBNSxB
NikgICAgICAgXAogICAgICAgIENDQUxMU0ZTVUIxMChVTixMTixUMSxUMixUMyxUNCxU
NSxUNixDRl8wLENGXzAsQ0ZfMCxDRl8wLEExLEEyLEEzLEE0LEE1LEE2LDAsMCwwLDAp
CiNkZWZpbmUgQ0NBTExTRlNVQjcoIFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LCAg
ICAgIEExLEEyLEEzLEE0LEE1LEE2LEE3KSAgICBcCiAgICAgICAgQ0NBTExTRlNVQjEw
KFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LENGXzAsQ0ZfMCxDRl8wLEExLEEyLEEz
LEE0LEE1LEE2LEE3LDAsMCwwKQojZGVmaW5lIENDQUxMU0ZTVUI4KCBVTixMTixUMSxU
MixUMyxUNCxUNSxUNixUNyxUOCwgICBBMSxBMixBMyxBNCxBNSxBNixBNyxBOCkgXAog
ICAgICAgIENDQUxMU0ZTVUIxMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxD
Rl8wLENGXzAsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsMCwwKQojZGVmaW5lIENDQUxM
U0ZTVUI5KCBVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxBMSxBMixBMyxB
NCxBNSxBNixBNyxBOCxBOSlcCiAgICAgICAgQ0NBTExTRlNVQjEwKFVOLExOLFQxLFQy
LFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LENGXzAsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgs
QTksMCkKI2RlZmluZSBDQ0FMTFNGU1VCMTAoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsVDksVEEsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEpXAogICAgICAg
IENDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxD
Rl8wLENGXzAsQ0ZfMCxDRl8wLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFBLDAs
MCwwLDApCiNkZWZpbmUgQ0NBTExTRlNVQjExKFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2
LFQ3LFQ4LFQ5LFRBLFRCLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFBLEFCKVwK
ICAgICAgICBDQ0FMTFNGU1VCMTQoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgs
VDksVEEsVEIsQ0ZfMCxDRl8wLENGXzAsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTks
QUEsQUIsMCwwLDApCiNkZWZpbmUgQ0NBTExTRlNVQjEyKFVOLExOLFQxLFQyLFQzLFQ0
LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5
LEFBLEFCLEFDKVwKICAgICAgICBDQ0FMTFNGU1VCMTQoVU4sTE4sVDEsVDIsVDMsVDQs
VDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsQ0ZfMCxDRl8wLEExLEEyLEEzLEE0LEE1LEE2
LEE3LEE4LEE5LEFBLEFCLEFDLDAsMCkKI2RlZmluZSBDQ0FMTFNGU1VCMTMoVU4sTE4s
VDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsQTEsQTIsQTMsQTQs
QTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQpXAogICAgICAgIENDQUxMU0ZTVUIxNChV
TixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxDRl8wLEEx
LEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFBLEFCLEFDLEFELDApCgojaWZkZWYgX19j
cGx1c3BsdXMKI2RlZmluZSBDUFBQUk9UT0NMU0ZTVUIwKCBVTixMTikKI2RlZmluZSBD
UFBQUk9UT0NMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSkKI2RlZmluZSBDUFBQUk9UT0NMU0ZTVUIyMChVTixMTixUMSxU
MixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxU
SixUSykKI2Vsc2UKI2RlZmluZSBDUFBQUk9UT0NMU0ZTVUIwKFVOLExOKSBcCiAgICAg
ICAgUFJPVE9DQ0FMTFNGU1VCMChVTixMTikKI2RlZmluZSBDUFBQUk9UT0NMU0ZTVUIx
NChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSkg
ICAgIFwKICAgICAgICBQUk9UT0NDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxU
NSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSkKI2RlZmluZSBDUFBQUk9UT0NMU0ZT
VUIyMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxURixURyxUSCxUSSxUSixUSykgXAogICAgICAgIFBST1RPQ0NBTExTRlNVQjIwKFVO
LExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRH
LFRILFRJLFRKLFRLKQojZW5kaWYKCiNpZmRlZiBDRlNVQkFTRlVOCiNkZWZpbmUgQ0NB
TExTRlNVQjAoVU4sTE4pIENDQUxMU0ZGVU4wKFVOLExOKQojZGVmaW5lIENDQUxMU0ZT
VUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxBMSxBMixBMyxBNCxBNSxBNixBNyxBOCxBOSxBQSxBQixBQyxBRCxBRSlcCiAgICAg
ICAgQ0NBTExTRkZVTjE0KFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRB
LFRCLFRDLFRELFRFLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFBLEFCLEFDLEFE
LEFFKQojZWxzZQovKiBkb3suLi59d2hpbGUoMCkgYWxsb3dzIGlmKGE9PWIpIEZPUlQo
KTsgZWxzZSBCT1JUKCk7ICovCiNkZWZpbmUgQ0NBTExTRlNVQjAoIFVOLExOKSBkb3tD
UFBQUk9UT0NMU0ZTVUIwKFVOLExOKSBDRkNfKFVOLExOKSgpO313aGlsZSgwKQojZGVm
aW5lIENDQUxMU0ZTVUIxNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSxBMSxBMixBMyxBNCxBNSxBNixBNyxBOCxBOSxBQSxBQixBQyxB
RCxBRSlcCmRve1ZWQ0YoVDEsQTEsQjEpIFZWQ0YoVDIsQTIsQjIpIFZWQ0YoVDMsQTMs
QjMpIFZWQ0YoVDQsQTQsQjQpIFZWQ0YoVDUsQTUsQjUpICBcCiAgIFZWQ0YoVDYsQTYs
QjYpIFZWQ0YoVDcsQTcsQjcpIFZWQ0YoVDgsQTgsQjgpIFZWQ0YoVDksQTksQjkpIFZW
Q0YoVEEsQUEsQjEwKSBcCiAgIFZWQ0YoVEIsQUIsQjExKSBWVkNGKFRDLEFDLEIxMikg
VlZDRihURCxBRCxCMTMpIFZWQ0YoVEUsQUUsQjE0KSAgICAgICAgICAgICBcCiAgIENQ
UFBST1RPQ0xTRlNVQjE0KFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRB
LFRCLFRDLFRELFRFKSAgICAgICAgICBcCiAgIEFDRihMTixUMSxBMSwxKSAgQUNGKExO
LFQyLEEyLDIpICBBQ0YoTE4sVDMsQTMsMykgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCiAgIEFDRihMTixUNCxBNCw0KSAgQUNGKExOLFQ1LEE1LDUpICBBQ0YoTE4sVDYs
QTYsNikgIEFDRihMTixUNyxBNyw3KSAgICAgICAgICBcCiAgIEFDRihMTixUOCxBOCw4
KSAgQUNGKExOLFQ5LEE5LDkpICBBQ0YoTE4sVEEsQUEsMTApIEFDRihMTixUQixBQiwx
MSkgICAgICAgICBcCiAgIEFDRihMTixUQyxBQywxMikgQUNGKExOLFRELEFELDEzKSBB
Q0YoTE4sVEUsQUUsMTQpICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgIENGQ18o
VU4sTE4pKCBDRkFSR1RBMTQoQUFDRixKQ0YsVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgs
VDksVEEsVEIsVEMsVEQsVEUsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIs
QUMsQUQsQUUpICk7XAogICBXQ0YoVDEsQTEsMSkgIFdDRihUMixBMiwyKSAgV0NGKFQz
LEEzLDMpICBXQ0YoVDQsQTQsNCkgIFdDRihUNSxBNSw1KSAgICAgICAgXAogICBXQ0Yo
VDYsQTYsNikgIFdDRihUNyxBNyw3KSAgV0NGKFQ4LEE4LDgpICBXQ0YoVDksQTksOSkg
IFdDRihUQSxBQSwxMCkgICAgICAgXAogICBXQ0YoVEIsQUIsMTEpIFdDRihUQyxBQywx
MikgV0NGKFRELEFELDEzKSBXQ0YoVEUsQUUsMTQpICAgICAgfXdoaWxlKDApCiNlbmRp
ZgoKCiNpZiBNQVhfUFJFUFJPX0FSR1M+MzEKI2RlZmluZSBDQ0FMTFNGU1VCMTUoVU4s
TE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsQTEs
QTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQsQUUsQUYpXAogICAgICAg
IENDQUxMU0ZTVUIyMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxU
QixUQyxURCxURSxURixDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQTEsQTIsQTMsQTQs
QTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQsQUUsQUYsMCwwLDAsMCwwKQojZGVmaW5l
IENDQUxMU0ZTVUIxNihVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxU
QixUQyxURCxURSxURixURyxBMSxBMixBMyxBNCxBNSxBNixBNyxBOCxBOSxBQSxBQixB
QyxBRCxBRSxBRixBRylcCiAgICAgICAgQ0NBTExTRlNVQjIwKFVOLExOLFQxLFQyLFQz
LFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLENGXzAsQ0ZfMCxD
Rl8wLENGXzAsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQsQUUs
QUYsQUcsMCwwLDAsMCkKI2RlZmluZSBDQ0FMTFNGU1VCMTcoVU4sTE4sVDEsVDIsVDMs
VDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsQTEsQTIsQTMs
QTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQsQUUsQUYsQUcsQUgpXAogICAgICAg
IENDQUxMU0ZTVUIyMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxU
QixUQyxURCxURSxURixURyxUSCxDRl8wLENGXzAsQ0ZfMCxBMSxBMixBMyxBNCxBNSxB
NixBNyxBOCxBOSxBQSxBQixBQyxBRCxBRSxBRixBRyxBSCwwLDAsMCkKI2RlZmluZSBD
Q0FMTFNGU1VCMTgoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIs
VEMsVEQsVEUsVEYsVEcsVEgsVEksQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEs
QUIsQUMsQUQsQUUsQUYsQUcsQUgsQUkpXAogICAgICAgIENDQUxMU0ZTVUIyMChVTixM
TixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxU
SCxUSSxDRl8wLENGXzAsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsQUMs
QUQsQUUsQUYsQUcsQUgsQUksMCwwKQojZGVmaW5lIENDQUxMU0ZTVUIxOShVTixMTixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxU
SSxUSixBMSxBMixBMyxBNCxBNSxBNixBNyxBOCxBOSxBQSxBQixBQyxBRCxBRSxBRixB
RyxBSCxBSSxBSilcCiAgICAgICAgQ0NBTExTRlNVQjIwKFVOLExOLFQxLFQyLFQzLFQ0
LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLENGXzAs
QTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQsQUUsQUYsQUcsQUgs
QUksQUosMCkKCiNpZmRlZiBDRlNVQkFTRlVOCiNkZWZpbmUgQ0NBTExTRlNVQjIwKFVO
LExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRH
LFRILCBcCiAgICAgICAgVEksVEosVEssIEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5
LEFBLEFCLEFDLEFELEFFLEFGLEFHLEFILEFJLEFKLEFLKSBcCiAgICAgICAgQ0NBTExT
RkZVTjIwKFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRE
LFRFLFRGLFRHLFRILCBcCiAgICAgICAgVEksVEosVEssIEExLEEyLEEzLEE0LEE1LEE2
LEE3LEE4LEE5LEFBLEFCLEFDLEFELEFFLEFGLEFHLEFILEFJLEFKLEFLKQojZWxzZQoj
ZGVmaW5lIENDQUxMU0ZTVUIyMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxU
OSxUQSxUQixUQyxURCxURSxURixURyxUSCwgXAogICAgICAgIFRJLFRKLFRLLCBBMSxB
MixBMyxBNCxBNSxBNixBNyxBOCxBOSxBQSxBQixBQyxBRCxBRSxBRixBRyxBSCxBSSxB
SixBSykgXApkb3tWVkNGKFQxLEExLEIxKSAgVlZDRihUMixBMixCMikgIFZWQ0YoVDMs
QTMsQjMpICBWVkNGKFQ0LEE0LEI0KSAgVlZDRihUNSxBNSxCNSkgICBcCiAgIFZWQ0Yo
VDYsQTYsQjYpICBWVkNGKFQ3LEE3LEI3KSAgVlZDRihUOCxBOCxCOCkgIFZWQ0YoVDks
QTksQjkpICBWVkNGKFRBLEFBLEIxMCkgIFwKICAgVlZDRihUQixBQixCMTEpIFZWQ0Yo
VEMsQUMsQjEyKSBWVkNGKFRELEFELEIxMykgVlZDRihURSxBRSxCMTQpIFZWQ0YoVEYs
QUYsQjE1KSAgXAogICBWVkNGKFRHLEFHLEIxNikgVlZDRihUSCxBSCxCMTcpIFZWQ0Yo
VEksQUksQjE4KSBWVkNGKFRKLEFKLEIxOSkgVlZDRihUSyxBSyxCMjApICBcCiAgIENQ
UFBST1RPQ0xTRlNVQjIwKFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRB
LFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLFRLKSAgXAogICBBQ0YoTE4sVDEsQTEs
MSkgIEFDRihMTixUMixBMiwyKSAgQUNGKExOLFQzLEEzLDMpICBBQ0YoTE4sVDQsQTQs
NCkgICAgICAgICAgXAogICBBQ0YoTE4sVDUsQTUsNSkgIEFDRihMTixUNixBNiw2KSAg
QUNGKExOLFQ3LEE3LDcpICBBQ0YoTE4sVDgsQTgsOCkgICAgICAgICAgXAogICBBQ0Yo
TE4sVDksQTksOSkgIEFDRihMTixUQSxBQSwxMCkgQUNGKExOLFRCLEFCLDExKSBBQ0Yo
TE4sVEMsQUMsMTIpICAgICAgICAgXAogICBBQ0YoTE4sVEQsQUQsMTMpIEFDRihMTixU
RSxBRSwxNCkgQUNGKExOLFRGLEFGLDE1KSBBQ0YoTE4sVEcsQUcsMTYpICAgICAgICAg
XAogICBBQ0YoTE4sVEgsQUgsMTcpIEFDRihMTixUSSxBSSwxOCkgQUNGKExOLFRKLEFK
LDE5KSBBQ0YoTE4sVEssQUssMjApICAgICAgICAgXAogICBDRkNfKFVOLExOKSggQ0ZB
UkdUQTIwKEFBQ0YsSkNGLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRD
LFRELFRFLFRGLFRHLFRILFRJLFRKLFRLLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5
LEFBLEFCLEFDLEFELEFFLEFGLEFHLEFILEFJLEFKLEFLKSApOyBcCiBXQ0YoVDEsQTEs
MSkgIFdDRihUMixBMiwyKSAgV0NGKFQzLEEzLDMpICBXQ0YoVDQsQTQsNCkgIFdDRihU
NSxBNSw1KSAgV0NGKFQ2LEE2LDYpICBcCiBXQ0YoVDcsQTcsNykgIFdDRihUOCxBOCw4
KSAgV0NGKFQ5LEE5LDkpICBXQ0YoVEEsQUEsMTApIFdDRihUQixBQiwxMSkgV0NGKFRD
LEFDLDEyKSBcCiBXQ0YoVEQsQUQsMTMpIFdDRihURSxBRSwxNCkgV0NGKFRGLEFGLDE1
KSBXQ0YoVEcsQUcsMTYpIFdDRihUSCxBSCwxNykgV0NGKFRJLEFJLDE4KSBcCiBXQ0Yo
VEosQUosMTkpIFdDRihUSyxBSywyMCkgfXdoaWxlKDApCiNlbmRpZgojZW5kaWYgICAg
ICAgICAvKiBNQVhfUFJFUFJPX0FSR1MgKi8KCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LSovCgovKiAgICAgICAgICAgICAgIFVUSUxJVElFUyBGT1IgQyBUTyBDQUxMIEZPUlRS
QU4gRlVOQ1RJT05TICAgICAgICAgICAgICAgICAqLwoKLypOLkIuIFBST1RPQ0NBTExT
RkZVTm4oLi4pIGdlbmVyYXRlcyBjb2RlLCB3aGV0aGVyIG9yIG5vdCB0aGUgRk9SVFJB
TgogIGZ1bmN0aW9uIGlzIGNhbGxlZC4gVGhlcmVmb3JlLCBlc3BlY2lhbGx5IGZvciBj
cmVhdG9yJ3Mgb2YgQyBoZWFkZXIgZmlsZXMKICBmb3IgbGFyZ2UgRk9SVFJBTiBsaWJy
YXJpZXMgd2hpY2ggaW5jbHVkZSBtYW55IGZ1bmN0aW9ucywgdG8gcmVkdWNlCiAgY29t
cGlsZSB0aW1lIGFuZCBvYmplY3QgY29kZSBzaXplLCBpdCBtYXkgYmUgZGVzaXJhYmxl
IHRvIGNyZWF0ZQogIHByZXByb2Nlc3NvciBkaXJlY3RpdmVzIHRvIGFsbG93IHVzZXJz
IHRvIGNyZWF0ZSBjb2RlIGZvciBvbmx5IHRob3NlCiAgZnVuY3Rpb25zIHdoaWNoIHRo
ZXkgdXNlLiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICovCgovKiBUaGUgZm9sbG93aW5nIGRlZmluZXMgdGhlIG1heGltdW0gbGVuZ3Ro
IHN0cmluZyB0aGF0IGEgZnVuY3Rpb24gY2FuIHJldHVybi4KICAgT2YgY291cnNlIGl0
IG1heSBiZSB1bmRlZmluZS1kIGFuZCByZS1kZWZpbmUtZCBiZWZvcmUgaW5kaXZpZHVh
bAogICBQUk9UT0NDQUxMU0ZGVU5uKC4uKSBhcyByZXF1aXJlZC4gSXQgd291bGQgYWxz
byBiZSBuaWNlIHRvIGhhdmUgdGhpcyBkZXJpdmVkCiAgIGZyb20gdGhlIGluZGl2aWR1
YWwgbWFjaGluZXMnIGxpbWl0cy4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICovCiNkZWZpbmUgTUFYX0xFTl9GT1JUUkFOX0ZVTkNUSU9OX1NUUklORyAw
eDRGRQoKLyogVGhlIGZvbGxvd2luZyBkZWZpbmVzIGEgY2hhcmFjdGVyIHVzZWQgYnkg
Q0ZPUlRSQU4uSCB0byBmbGFnIHRoZSBlbmQgb2YgYQogICBzdHJpbmcgY29taW5nIG91
dCBvZiBhIEZPUlRSQU4gcm91dGluZS4gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAqLwojZGVmaW5lIENGT1JUUkFOX05PTl9DSEFSIDB4N0YKCiNpZmRlZiBPTERf
VkFYQyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogUHJldmVudCAlQ0Mt
SS1QQVJBTU5PVFVTRUQuICovCiNwcmFnbWEgbm9zdGFuZGFyZAojZW5kaWYKCiNkZWZp
bmUgX1NFUF8oVE4sQyxjZkNPTU1BKSAgICAgXyhfX1NFUF8sQykoVE4sY2ZDT01NQSkK
I2RlZmluZSBfX1NFUF8wKFROLGNmQ09NTUEpICAKI2RlZmluZSBfX1NFUF8xKFROLGNm
Q09NTUEpICAgICBfSWNmKDIsU0VQLFROLGNmQ09NTUEsMCkKI2RlZmluZSAgICAgICAg
SU5UX2NmU0VQKFQsQikgXyhBLEIpCiNkZWZpbmUgICAgICAgSU5UVl9jZlNFUChULEIp
IElOVF9jZlNFUChULEIpCiNkZWZpbmUgICAgICBJTlRWVl9jZlNFUChULEIpIElOVF9j
ZlNFUChULEIpCiNkZWZpbmUgICAgIElOVFZWVl9jZlNFUChULEIpIElOVF9jZlNFUChU
LEIpCiNkZWZpbmUgICAgSU5UVlZWVl9jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNk
ZWZpbmUgICBJTlRWVlZWVl9jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUg
IElOVFZWVlZWVl9jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgSU5UVlZW
VlZWVl9jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgICAgICAgUElOVF9j
ZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgICAgICBQVk9JRF9jZlNFUChU
LEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgICAgUk9VVElORV9jZlNFUChULEIpIElO
VF9jZlNFUChULEIpCiNkZWZpbmUgICAgIFNJTVBMRV9jZlNFUChULEIpIElOVF9jZlNF
UChULEIpCiNkZWZpbmUgICAgICAgVk9JRF9jZlNFUChULEIpIElOVF9jZlNFUChULEIp
ICAgIC8qIEZvciBGT1JUUkFOIGNhbGxzIEMgc3Vici5zLiovCiNkZWZpbmUgICAgIFNU
UklOR19jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgICAgU1RSSU5HVl9j
ZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgICAgUFNUUklOR19jZlNFUChU
LEIpIElOVF9jZlNFUChULEIpCiNkZWZpbmUgICBQU1RSSU5HVl9jZlNFUChULEIpIElO
VF9jZlNFUChULEIpCiNkZWZpbmUgICBQTlNUUklOR19jZlNFUChULEIpIElOVF9jZlNF
UChULEIpCiNkZWZpbmUgICBQUFNUUklOR19jZlNFUChULEIpIElOVF9jZlNFUChULEIp
CiNkZWZpbmUgICAgWlRSSU5HVl9jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiNkZWZp
bmUgICBQWlRSSU5HVl9jZlNFUChULEIpIElOVF9jZlNFUChULEIpCiAgICAgICAgICAg
ICAgICAgICAgICAgICAKI2lmIGRlZmluZWQoU0lHTkVEX0JZVEUpIHx8ICFkZWZpbmVk
KFVOU0lHTkVEX0JZVEUpCiNpZmRlZiBPTERfVkFYQwojZGVmaW5lIElOVEVHRVJfQllU
RSAgICAgICAgICAgICAgIGNoYXIgICAgLyogT2xkIFZBWEMgYmFyZnMgb24gJ3NpZ25l
ZCBjaGFyJyAqLwojZWxzZQojZGVmaW5lIElOVEVHRVJfQllURSAgICAgICAgc2lnbmVk
IGNoYXIgICAgLyogZGVmYXVsdCAqLwojZW5kaWYKI2Vsc2UKI2RlZmluZSBJTlRFR0VS
X0JZVEUgICAgICAgIHVuc2lnbmVkIGNoYXIKI2VuZGlmCiNkZWZpbmUgICAgQllURVZW
VlZWVlZfY2ZUWVBFIElOVEVHRVJfQllURQojZGVmaW5lICBET1VCTEVWVlZWVlZWX2Nm
VFlQRSBET1VCTEVfUFJFQ0lTSU9OIAojZGVmaW5lICAgRkxPQVRWVlZWVlZWX2NmVFlQ
RSBGT1JUUkFOX1JFQUwKI2RlZmluZSAgICAgSU5UVlZWVlZWVl9jZlRZUEUgaW50CiNk
ZWZpbmUgTE9HSUNBTFZWVlZWVlZfY2ZUWVBFIGludAojZGVmaW5lICAgIExPTkdWVlZW
VlZWX2NmVFlQRSBsb25nCiNkZWZpbmUgICBTSE9SVFZWVlZWVlZfY2ZUWVBFIHNob3J0
CiNkZWZpbmUgICAgICAgICAgUEJZVEVfY2ZUWVBFIElOVEVHRVJfQllURQojZGVmaW5l
ICAgICAgICBQRE9VQkxFX2NmVFlQRSBET1VCTEVfUFJFQ0lTSU9OIAojZGVmaW5lICAg
ICAgICAgUEZMT0FUX2NmVFlQRSBGT1JUUkFOX1JFQUwKI2RlZmluZSAgICAgICAgICAg
UElOVF9jZlRZUEUgaW50CiNkZWZpbmUgICAgICAgUExPR0lDQUxfY2ZUWVBFIGludAoj
ZGVmaW5lICAgICAgICAgIFBMT05HX2NmVFlQRSBsb25nCiNkZWZpbmUgICAgICAgICBQ
U0hPUlRfY2ZUWVBFIHNob3J0CgojZGVmaW5lIENGQVJHUzAoQSxULFYsVyxYLFksWikg
XzMoVCxfY2YsQSkKI2RlZmluZSBDRkFSR1MxKEEsVCxWLFcsWCxZLFopIF8zKFQsX2Nm
LEEpKFYpCiNkZWZpbmUgQ0ZBUkdTMihBLFQsVixXLFgsWSxaKSBfMyhULF9jZixBKShW
LFcpCiNkZWZpbmUgQ0ZBUkdTMyhBLFQsVixXLFgsWSxaKSBfMyhULF9jZixBKShWLFcs
WCkKI2RlZmluZSBDRkFSR1M0KEEsVCxWLFcsWCxZLFopIF8zKFQsX2NmLEEpKFYsVyxY
LFkpCiNkZWZpbmUgQ0ZBUkdTNShBLFQsVixXLFgsWSxaKSBfMyhULF9jZixBKShWLFcs
WCxZLFopCgojZGVmaW5lICBfSWNmKE4sVCxJLFgsWSkgICAgICAgICAgICAgICAgIF8o
SSxfY2ZJTlQpKE4sVCxJLFgsWSwwKQojZGVmaW5lIF9JY2Y0KE4sVCxJLFgsWSxaKSAg
ICAgICAgICAgICAgIF8oSSxfY2ZJTlQpKE4sVCxJLFgsWSxaKQojZGVmaW5lICAgICAg
ICAgICBCWVRFX2NmSU5UKE4sQSxCLFgsWSxaKSAgICAgICAgRE9VQkxFX2NmSU5UKE4s
QSxCLFgsWSxaKQojZGVmaW5lICAgICAgICAgRE9VQkxFX2NmSU5UKE4sQSxCLFgsWSxa
KSBfKENGQVJHUyxOKShBLElOVCxCLFgsWSxaLDApCiNkZWZpbmUgICAgICAgICAgRkxP
QVRfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICBET1VCTEVfY2ZJTlQoTixBLEIsWCxZ
LFopCiNkZWZpbmUgICAgICAgICAgICBJTlRfY2ZJTlQoTixBLEIsWCxZLFopICAgICAg
ICBET1VCTEVfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIExPR0lDQUxf
Y2ZJTlQoTixBLEIsWCxZLFopICAgICAgICBET1VCTEVfY2ZJTlQoTixBLEIsWCxZLFop
CiNkZWZpbmUgICAgICAgICAgIExPTkdfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICBE
T1VCTEVfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgU0hPUlRfY2ZJ
TlQoTixBLEIsWCxZLFopICAgICAgICBET1VCTEVfY2ZJTlQoTixBLEIsWCxZLFopCiNk
ZWZpbmUgICAgICAgICAgUEJZVEVfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIFBET1VC
TEVfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIFBET1VCTEVfY2ZJTlQo
TixBLEIsWCxZLFopIF8oQ0ZBUkdTLE4pKEEsUElOVCxCLFgsWSxaLDApCiNkZWZpbmUg
ICAgICAgICBQRkxPQVRfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIFBET1VCTEVfY2ZJ
TlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgIFBJTlRfY2ZJTlQoTixBLEIs
WCxZLFopICAgICAgIFBET1VCTEVfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAg
ICAgUExPR0lDQUxfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIFBET1VCTEVfY2ZJTlQo
TixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgUExPTkdfY2ZJTlQoTixBLEIsWCxZ
LFopICAgICAgIFBET1VCTEVfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAg
ICBQU0hPUlRfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIFBET1VCTEVfY2ZJTlQoTixB
LEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgQllURVZfY2ZJTlQoTixBLEIsWCxZLFop
ICAgICAgIERPVUJMRVZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICBC
WVRFVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgRE9VQkxFVlZfY2ZJTlQoTixBLEIs
WCxZLFopCiNkZWZpbmUgICAgICAgIEJZVEVWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAg
ICBET1VCTEVWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgQllURVZW
VlZfY2ZJTlQoTixBLEIsWCxZLFopICAgIERPVUJMRVZWVlZfY2ZJTlQoTixBLEIsWCxZ
LFopCiNkZWZpbmUgICAgICBCWVRFVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgRE9V
QkxFVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgIEJZVEVWVlZWVlZf
Y2ZJTlQoTixBLEIsWCxZLFopICBET1VCTEVWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFop
CiNkZWZpbmUgICAgQllURVZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopIERPVUJMRVZW
VlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIERPVUJMRVZfY2ZJ
TlQoTixBLEIsWCxZLFopIF8oQ0ZBUkdTLE4pKEEsSU5UVixCLFgsWSxaLDApCiNkZWZp
bmUgICAgICAgRE9VQkxFVlZfY2ZJTlQoTixBLEIsWCxZLFopIF8oQ0ZBUkdTLE4pKEEs
SU5UVlYsQixYLFksWiwwKQojZGVmaW5lICAgICAgRE9VQkxFVlZWX2NmSU5UKE4sQSxC
LFgsWSxaKSBfKENGQVJHUyxOKShBLElOVFZWVixCLFgsWSxaLDApCiNkZWZpbmUgICAg
IERPVUJMRVZWVlZfY2ZJTlQoTixBLEIsWCxZLFopIF8oQ0ZBUkdTLE4pKEEsSU5UVlZW
VixCLFgsWSxaLDApCiNkZWZpbmUgICAgRE9VQkxFVlZWVlZfY2ZJTlQoTixBLEIsWCxZ
LFopIF8oQ0ZBUkdTLE4pKEEsSU5UVlZWVlYsQixYLFksWiwwKQojZGVmaW5lICAgRE9V
QkxFVlZWVlZWX2NmSU5UKE4sQSxCLFgsWSxaKSBfKENGQVJHUyxOKShBLElOVFZWVlZW
VixCLFgsWSxaLDApCiNkZWZpbmUgIERPVUJMRVZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZ
LFopIF8oQ0ZBUkdTLE4pKEEsSU5UVlZWVlZWVixCLFgsWSxaLDApCiNkZWZpbmUgICAg
ICAgICBGTE9BVFZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIERPVUJMRVZfY2ZJTlQo
TixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIEZMT0FUVlZfY2ZJTlQoTixBLEIsWCxZ
LFopICAgICAgRE9VQkxFVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAg
RkxPQVRWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgICBET1VCTEVWVlZfY2ZJTlQoTixB
LEIsWCxZLFopCiNkZWZpbmUgICAgICBGTE9BVFZWVlZfY2ZJTlQoTixBLEIsWCxZLFop
ICAgIERPVUJMRVZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgIEZMT0FU
VlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgRE9VQkxFVlZWVlZfY2ZJTlQoTixBLEIs
WCxZLFopCiNkZWZpbmUgICAgRkxPQVRWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICBE
T1VCTEVWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICBGTE9BVFZWVlZW
VlZfY2ZJTlQoTixBLEIsWCxZLFopIERPVUJMRVZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZ
LFopCiNkZWZpbmUgICAgICAgICAgIElOVFZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAg
IERPVUJMRVZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgSU5UVlZf
Y2ZJTlQoTixBLEIsWCxZLFopICAgICAgRE9VQkxFVlZfY2ZJTlQoTixBLEIsWCxZLFop
CiNkZWZpbmUgICAgICAgICBJTlRWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgICBET1VC
TEVWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIElOVFZWVlZfY2ZJ
TlQoTixBLEIsWCxZLFopICAgIERPVUJMRVZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNk
ZWZpbmUgICAgICAgSU5UVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgRE9VQkxFVlZW
VlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICBJTlRWVlZWVlZfY2ZJTlQo
TixBLEIsWCxZLFopICBET1VCTEVWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZp
bmUgICAgIElOVFZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopIERPVUJMRVZWVlZWVlZf
Y2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgTE9HSUNBTFZfY2ZJTlQoTixB
LEIsWCxZLFopICAgICAgIERPVUJMRVZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUg
ICAgICBMT0dJQ0FMVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgRE9VQkxFVlZfY2ZJ
TlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgIExPR0lDQUxWVlZfY2ZJTlQoTixBLEIs
WCxZLFopICAgICBET1VCTEVWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAg
TE9HSUNBTFZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgIERPVUJMRVZWVlZfY2ZJTlQo
TixBLEIsWCxZLFopCiNkZWZpbmUgICBMT0dJQ0FMVlZWVlZfY2ZJTlQoTixBLEIsWCxZ
LFopICAgRE9VQkxFVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgIExPR0lD
QUxWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICBET1VCTEVWVlZWVlZfY2ZJTlQoTixB
LEIsWCxZLFopCiNkZWZpbmUgTE9HSUNBTFZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFop
IERPVUJMRVZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAg
TE9OR1ZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIERPVUJMRVZfY2ZJTlQoTixBLEIs
WCxZLFopCiNkZWZpbmUgICAgICAgICBMT05HVlZfY2ZJTlQoTixBLEIsWCxZLFopICAg
ICAgRE9VQkxFVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIExPTkdW
VlZfY2ZJTlQoTixBLEIsWCxZLFopICAgICBET1VCTEVWVlZfY2ZJTlQoTixBLEIsWCxZ
LFopCiNkZWZpbmUgICAgICAgTE9OR1ZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgIERP
VUJMRVZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICBMT05HVlZWVlZf
Y2ZJTlQoTixBLEIsWCxZLFopICAgRE9VQkxFVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFop
CiNkZWZpbmUgICAgIExPTkdWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICBET1VCTEVW
VlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgTE9OR1ZWVlZWVlZfY2ZJ
TlQoTixBLEIsWCxZLFopIERPVUJMRVZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNk
ZWZpbmUgICAgICAgICBTSE9SVFZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgIERPVUJM
RVZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIFNIT1JUVlZfY2ZJTlQo
TixBLEIsWCxZLFopICAgICAgRE9VQkxFVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZp
bmUgICAgICAgU0hPUlRWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgICBET1VCTEVWVlZf
Y2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICBTSE9SVFZWVlZfY2ZJTlQoTixB
LEIsWCxZLFopICAgIERPVUJMRVZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUg
ICAgIFNIT1JUVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopICAgRE9VQkxFVlZWVlZfY2ZJ
TlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgU0hPUlRWVlZWVlZfY2ZJTlQoTixBLEIs
WCxZLFopICBET1VCTEVWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICBT
SE9SVFZWVlZWVlZfY2ZJTlQoTixBLEIsWCxZLFopIERPVUJMRVZWVlZWVlZfY2ZJTlQo
TixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZ
LFopIF8oQ0ZBUkdTLE4pKEEsQixCLFgsWSxaLDApCiNkZWZpbmUgICAgICAgIFJPVVRJ
TkVfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZ
LFopCi8qQ1JBWSBjb3VnaHMgb24gdGhlIGZpcnN0LAogIGkuZS4gdGhlIHVzdWFsIHRy
b3VibGUgb2Ygbm90IGJlaW5nIGFibGUgdG8KICBkZWZpbmUgbWFjcm9zIHRvIG1hY3Jv
cyB3aXRoIGFyZ3VtZW50cy4gCiAgTmV3IHVsdHJpeCBpcyB3b3JzZSwgaXQgY291Z2hz
IG9uIGFsbCBzdWNoIHVzZXMuCiAqLwovKiNkZWZpbmUgICAgICAgU0lNUExFX2NmSU5U
ICAgICAgICAgICAgICAgICAgICBQVk9JRF9jZklOVCovCiNkZWZpbmUgICAgICAgICBT
SU1QTEVfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIs
WCxZLFopCiNkZWZpbmUgICAgICAgICAgIFZPSURfY2ZJTlQoTixBLEIsWCxZLFopICAg
ICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICBTVFJJ
TkdfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZ
LFopCiNkZWZpbmUgICAgICAgIFNUUklOR1ZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAg
ICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIFBTVFJJTkdf
Y2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZLFop
CiNkZWZpbmUgICAgICAgUFNUUklOR1ZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAg
UFZPSURfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgUE5TVFJJTkdfY2ZJ
TlQoTixBLEIsWCxZLFopICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZLFopCiNk
ZWZpbmUgICAgICAgUFBTVFJJTkdfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAgUFZP
SURfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgIFpUUklOR1ZfY2ZJTlQo
TixBLEIsWCxZLFopICAgICAgICAgUFZPSURfY2ZJTlQoTixBLEIsWCxZLFopCiNkZWZp
bmUgICAgICAgUFpUUklOR1ZfY2ZJTlQoTixBLEIsWCxZLFopICAgICAgICAgUFZPSURf
Y2ZJTlQoTixBLEIsWCxZLFopCiNkZWZpbmUgICAgICAgICAgIENGXzBfY2ZJTlQoTixB
LEIsWCxZLFopCiAgICAgICAgICAgICAgICAgICAgICAgICAKCiNkZWZpbmUgICBVQ0Yo
VE4sSSxDKSAgX1NFUF8oVE4sQyxjZkNPTU1BKSBfSWNmKDIsVSxUTixfKEEsSSksMCkK
I2RlZmluZSAgVVVDRihUTixJLEMpICBfU0VQXyhUTixDLGNmQ09NTUEpIF9TRVBfKFRO
LDEsSSkgCiNkZWZpbmUgVVVVQ0YoVE4sSSxDKSAgX1NFUF8oVE4sQyxjZkNPTE9OKSBf
SWNmKDIsVSxUTixfKEEsSSksMCkKI2RlZmluZSAgICAgICAgSU5UX2NmVShULEEpIF8o
VCxWVlZWVlZWX2NmVFlQRSkgICBBCiNkZWZpbmUgICAgICAgSU5UVl9jZlUoVCxBKSBf
KFQsVlZWVlZWX2NmVFlQRSkgICogQQojZGVmaW5lICAgICAgSU5UVlZfY2ZVKFQsQSkg
XyhULFZWVlZWX2NmVFlQRSkgICAqIEEKI2RlZmluZSAgICAgSU5UVlZWX2NmVShULEEp
IF8oVCxWVlZWX2NmVFlQRSkgICAgKiBBCiNkZWZpbmUgICAgSU5UVlZWVl9jZlUoVCxB
KSBfKFQsVlZWX2NmVFlQRSkgICAgICogQQojZGVmaW5lICAgSU5UVlZWVlZfY2ZVKFQs
QSkgXyhULFZWX2NmVFlQRSkgICAgICAqIEEKI2RlZmluZSAgSU5UVlZWVlZWX2NmVShU
LEEpIF8oVCxWX2NmVFlQRSkgICAgICAgKiBBCiNkZWZpbmUgSU5UVlZWVlZWVl9jZlUo
VCxBKSBfKFQsX2NmVFlQRSkgICAgICAgICogQQojZGVmaW5lICAgICAgIFBJTlRfY2ZV
KFQsQSkgXyhULF9jZlRZUEUpICAgICAgICAqIEEKI2RlZmluZSAgICAgIFBWT0lEX2Nm
VShULEEpIHZvaWQgICpBIAojZGVmaW5lICAgIFJPVVRJTkVfY2ZVKFQsQSkgdm9pZCAo
KkEpKENGX05VTExfUFJPVE8pIAojZGVmaW5lICAgICAgIFZPSURfY2ZVKFQsQSkgdm9p
ZCAgIEEgICAgLyogTmVlZGVkIGZvciBDIGNhbGxzIEZPUlRSQU4gc3ViLnMuICAqLwoj
ZGVmaW5lICAgICBTVFJJTkdfY2ZVKFQsQSkgY2hhciAgKkEgICAgLyogICAgICAgICAg
ICB2aWEgVk9JRCBhbmQgd3JhcHBlci4gICAqLwojZGVmaW5lICAgIFNUUklOR1ZfY2ZV
KFQsQSkgY2hhciAgKkEKI2RlZmluZSAgICBQU1RSSU5HX2NmVShULEEpIGNoYXIgICpB
CiNkZWZpbmUgICBQU1RSSU5HVl9jZlUoVCxBKSBjaGFyICAqQQojZGVmaW5lICAgIFpU
UklOR1ZfY2ZVKFQsQSkgY2hhciAgKkEKI2RlZmluZSAgIFBaVFJJTkdWX2NmVShULEEp
IGNoYXIgICpBCgovKiBWT0lEIGJyZWFrcyBVIGludG8gVSBhbmQgVVUuICovCiNkZWZp
bmUgICAgICAgSU5UX2NmVVUoVCxBKSBfKFQsVlZWVlZWVl9jZlRZUEUpIEEKI2RlZmlu
ZSAgICAgIFZPSURfY2ZVVShULEEpICAgICAgICAgICAgIC8qIE5lZWRlZCBmb3IgRk9S
VFJBTiBjYWxscyBDIHN1Yi5zLiAgKi8KI2RlZmluZSAgICBTVFJJTkdfY2ZVVShULEEp
IGNoYXIgKkEgCgoKI2RlZmluZSAgICAgIEJZVEVfY2ZQVShBKSAgIENGZXh0ZXJuIElO
VEVHRVJfQllURSAgICAgIEZDQUxMU0NfUVVBTElGSUVSIEEKI2RlZmluZSAgICBET1VC
TEVfY2ZQVShBKSAgIENGZXh0ZXJuIERPVUJMRV9QUkVDSVNJT04gIEZDQUxMU0NfUVVB
TElGSUVSIEEKI2lmICEgKGRlZmluZWQoRkxPQVRGVU5DVElPTlRZUEUpJiZkZWZpbmVk
KEFTU0lHTkZMT0FUKSYmZGVmaW5lZChSRVRVUk5GTE9BVCkpCiNkZWZpbmUgICAgIEZM
T0FUX2NmUFUoQSkgICBDRmV4dGVybiBGT1JUUkFOX1JFQUwgICAgICBGQ0FMTFNDX1FV
QUxJRklFUiBBCiNlbHNlCQkJCSAgIAkgICAgICAgICAgICAgICAgICAgCiNkZWZpbmUg
ICAgIEZMT0FUX2NmUFUoQSkgICBDRmV4dGVybiBGTE9BVEZVTkNUSU9OVFlQRSBGQ0FM
TFNDX1FVQUxJRklFUiBBCiNlbmRpZgkJCQkgICAJICAgICAgICAgICAgICAgICAgIAoj
ZGVmaW5lICAgICAgIElOVF9jZlBVKEEpICAgQ0ZleHRlcm4gaW50ICAgRkNBTExTQ19R
VUFMSUZJRVIgICBBCiNkZWZpbmUgICBMT0dJQ0FMX2NmUFUoQSkgICBDRmV4dGVybiBp
bnQgICBGQ0FMTFNDX1FVQUxJRklFUiAgIEEKI2RlZmluZSAgICAgIExPTkdfY2ZQVShB
KSAgIENGZXh0ZXJuIGxvbmcgIEZDQUxMU0NfUVVBTElGSUVSICAgQQojZGVmaW5lICAg
ICBTSE9SVF9jZlBVKEEpICAgQ0ZleHRlcm4gc2hvcnQgRkNBTExTQ19RVUFMSUZJRVIg
ICBBCiNkZWZpbmUgICAgU1RSSU5HX2NmUFUoQSkgICBDRmV4dGVybiB2b2lkICBGQ0FM
TFNDX1FVQUxJRklFUiAgIEEKI2RlZmluZSAgICAgIFZPSURfY2ZQVShBKSAgIENGZXh0
ZXJuIHZvaWQgIEZDQUxMU0NfUVVBTElGSUVSICAgQQoKI2RlZmluZSAgICBCWVRFX2Nm
RSBJTlRFR0VSX0JZVEUgICAgIEEwOwojZGVmaW5lICBET1VCTEVfY2ZFIERPVUJMRV9Q
UkVDSVNJT04gQTA7CiNpZiAhIChkZWZpbmVkKEZMT0FURlVOQ1RJT05UWVBFKSYmZGVm
aW5lZChBU1NJR05GTE9BVCkmJmRlZmluZWQoUkVUVVJORkxPQVQpKQojZGVmaW5lICAg
RkxPQVRfY2ZFIEZPUlRSQU5fUkVBTCAgQTA7CiNlbHNlCiNkZWZpbmUgICBGTE9BVF9j
ZkUgRk9SVFJBTl9SRUFMIEFBMDsgICBGTE9BVEZVTkNUSU9OVFlQRSBBMDsKI2VuZGlm
CiNkZWZpbmUgICAgIElOVF9jZkUgaW50ICAgIEEwOwojZGVmaW5lIExPR0lDQUxfY2ZF
IGludCAgICBBMDsKI2RlZmluZSAgICBMT05HX2NmRSBsb25nICAgQTA7CiNkZWZpbmUg
ICBTSE9SVF9jZkUgc2hvcnQgIEEwOwojZGVmaW5lICAgIFZPSURfY2ZFCiNpZmRlZiB2
bXNGb3J0cmFuCiNkZWZpbmUgIFNUUklOR19jZkUgc3RhdGljIGNoYXIgQUEwWzErTUFY
X0xFTl9GT1JUUkFOX0ZVTkNUSU9OX1NUUklOR107ICAgICAgICBcCiAgICAgICAgICAg
ICAgICAgICAgICAgc3RhdGljIGZzdHJpbmcgQTAgPSAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICB7TUFYX0xFTl9GT1JUUkFOX0ZV
TkNUSU9OX1NUUklORyxEU0MkS19EVFlQRV9ULERTQyRLX0NMQVNTX1MsQUEwfTtcCiAg
ICAgICAgICAgICAgIG1lbXNldChBQTAsIENGT1JUUkFOX05PTl9DSEFSLCBNQVhfTEVO
X0ZPUlRSQU5fRlVOQ1RJT05fU1RSSU5HKTtcCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICooQUEwK01BWF9MRU5fRk9SVFJBTl9GVU5DVElPTl9TVFJJTkcp
PSdcMCc7CiNlbHNlCiNpZmRlZiBDUkFZRm9ydHJhbgojZGVmaW5lICBTVFJJTkdfY2ZF
IHN0YXRpYyBjaGFyIEFBMFsxK01BWF9MRU5fRk9SVFJBTl9GVU5DVElPTl9TVFJJTkdd
OyAgICAgICAgXAogICAgICAgICAgICAgICAgICAgc3RhdGljIF9mY2QgQTA7ICooQUEw
K01BWF9MRU5fRk9SVFJBTl9GVU5DVElPTl9TVFJJTkcpPSdcMCc7XAogICAgICAgICAg
ICAgICAgbWVtc2V0KEFBMCxDRk9SVFJBTl9OT05fQ0hBUiwgTUFYX0xFTl9GT1JUUkFO
X0ZVTkNUSU9OX1NUUklORyk7XAogICAgICAgICAgICAgICAgICAgICAgICAgICAgQTAg
PSBfY3B0b2ZjZChBQTAsTUFYX0xFTl9GT1JUUkFOX0ZVTkNUSU9OX1NUUklORyk7CiNl
bHNlCi8qICdjYzogU0MzLjAuMSAxMyBKdWwgMTk5NCcgYmFyZnMgb24gY2hhciBBMFsw
eDRGRSsxXTsgCiAqIGNoYXIgQTBbMHg0RkUgKzFdOyBjaGFyIEEwWzErMHg0RkVdOyBh
cmUgYm90aCBPSy4gICAgICovCiNkZWZpbmUgU1RSSU5HX2NmRSBzdGF0aWMgY2hhciBB
MFsxK01BWF9MRU5fRk9SVFJBTl9GVU5DVElPTl9TVFJJTkddOyAgICAgICAgICBcCiAg
ICAgICAgICAgICAgICAgICAgICAgbWVtc2V0KEEwLCBDRk9SVFJBTl9OT05fQ0hBUiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIE1BWF9MRU5fRk9SVFJBTl9GVU5DVElPTl9TVFJJTkcpOyAgICAgICAgICAg
ICAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgKihBMCtNQVhfTEVOX0ZPUlRSQU5f
RlVOQ1RJT05fU1RSSU5HKT0nXDAnOwojZW5kaWYKI2VuZGlmCi8qIEVTVFJJTkcgbXVz
dCB1c2Ugc3RhdGljIGNoYXIuIGFycmF5IHdoaWNoIGlzIGd1YXJhbnRlZWQgdG8gZXhp
c3QgYWZ0ZXIKICAgZnVuY3Rpb24gcmV0dXJucy4gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCgovKiBOLkIuaSkgVGhlIGRp
ZmYuIGZvciAwIChaZXJvKSBhbmQgPj0xIGFyZ3VtZW50cy4KICAgICAgIGlpKVRoYXQg
dGhlIGZvbGxvd2luZyBjcmVhdGUgYW4gdW5tYXRjaGVkIGJyYWNrZXQsIGkuZS4gJygn
LCB3aGljaAogICAgICAgICAgbXVzdCBvZiBjb3Vyc2UgYmUgbWF0Y2hlZCBpbiB0aGUg
Y2FsbC4KICAgICAgIGlpaSlDb21tYXMgbXVzdCBiZSBoYW5kbGVkIHZlcnkgY2FyZWZ1
bGx5ICAgICAgICAgICAgICAgICAgICAgICAgICovCiNkZWZpbmUgICAgSU5UX2NmR1oo
VCxVTixMTikgQTA9Q0ZDXyhVTixMTikoCiNkZWZpbmUgICBWT0lEX2NmR1ooVCxVTixM
TikgICAgQ0ZDXyhVTixMTikoCiNpZmRlZiB2bXNGb3J0cmFuCiNkZWZpbmUgU1RSSU5H
X2NmR1ooVCxVTixMTikgICAgQ0ZDXyhVTixMTikoJkEwCiNlbHNlCiNpZiBkZWZpbmVk
KENSQVlGb3J0cmFuKSB8fCBkZWZpbmVkKEFic29mdFVOSVhGb3J0cmFuKQojZGVmaW5l
IFNUUklOR19jZkdaKFQsVU4sTE4pICAgIENGQ18oVU4sTE4pKCBBMAojZWxzZQojZGVm
aW5lIFNUUklOR19jZkdaKFQsVU4sTE4pICAgIENGQ18oVU4sTE4pKCBBMCxNQVhfTEVO
X0ZPUlRSQU5fRlVOQ1RJT05fU1RSSU5HCiNlbmRpZgojZW5kaWYKCiNkZWZpbmUgICAg
IElOVF9jZkcoVCxVTixMTikgICAgSU5UX2NmR1ooVCxVTixMTikKI2RlZmluZSAgICBW
T0lEX2NmRyhULFVOLExOKSAgIFZPSURfY2ZHWihULFVOLExOKQojZGVmaW5lICBTVFJJ
TkdfY2ZHKFQsVU4sTE4pIFNUUklOR19jZkdaKFQsVU4sTE4pLCAvKiwgaXMgb25seSBk
aWZmLiBmcm9tIF9jZkcqLwoKI2RlZmluZSAgICBCWVRFVlZWVlZWVl9jZlBQCiNkZWZp
bmUgICAgIElOVFZWVlZWVlZfY2ZQUCAgICAgLyogVGhlc2UgY29tcGxlbWVudCBGTE9B
VFZWVlZWVlZfY2ZQUC4gKi8KI2RlZmluZSAgRE9VQkxFVlZWVlZWVl9jZlBQCiNkZWZp
bmUgTE9HSUNBTFZWVlZWVlZfY2ZQUAojZGVmaW5lICAgIExPTkdWVlZWVlZWX2NmUFAK
I2RlZmluZSAgIFNIT1JUVlZWVlZWVl9jZlBQCiNkZWZpbmUgICAgICAgICAgUEJZVEVf
Y2ZQUAojZGVmaW5lICAgICAgICAgICBQSU5UX2NmUFAKI2RlZmluZSAgICAgICAgUERP
VUJMRV9jZlBQCiNkZWZpbmUgICAgICAgUExPR0lDQUxfY2ZQUAojZGVmaW5lICAgICAg
ICAgIFBMT05HX2NmUFAKI2RlZmluZSAgICAgICAgIFBTSE9SVF9jZlBQCiNkZWZpbmUg
ICAgICAgICBQRkxPQVRfY2ZQUCBGTE9BVFZWVlZWVlZfY2ZQUAoKI2RlZmluZSBCQ0Yo
VE4sQU4sQykgICAgICAgIF9TRVBfKFROLEMsY2ZDT01NQSkgX0ljZigyLEIsVE4sQU4s
MCkKI2RlZmluZSAgICAgICAgSU5UX2NmQihULEEpIChfKFQsVlZWVlZWVl9jZlRZUEUp
KSBBCiNkZWZpbmUgICAgICAgSU5UVl9jZkIoVCxBKSAgICAgICAgICAgIEEKI2RlZmlu
ZSAgICAgIElOVFZWX2NmQihULEEpICAgICAgICAgICAoQSlbMF0KI2RlZmluZSAgICAg
SU5UVlZWX2NmQihULEEpICAgICAgICAgICAoQSlbMF1bMF0KI2RlZmluZSAgICBJTlRW
VlZWX2NmQihULEEpICAgICAgICAgICAoQSlbMF1bMF1bMF0KI2RlZmluZSAgIElOVFZW
VlZWX2NmQihULEEpICAgICAgICAgICAoQSlbMF1bMF1bMF1bMF0KI2RlZmluZSAgSU5U
VlZWVlZWX2NmQihULEEpICAgICAgICAgICAoQSlbMF1bMF1bMF1bMF1bMF0KI2RlZmlu
ZSBJTlRWVlZWVlZWX2NmQihULEEpICAgICAgICAgICAoQSlbMF1bMF1bMF1bMF1bMF1b
MF0KI2RlZmluZSAgICAgICBQSU5UX2NmQihULEEpIF8oVCxfY2ZQUCkmQQojZGVmaW5l
ICAgICBTVFJJTkdfY2ZCKFQsQSkgKGNoYXIgKikgICBBCiNkZWZpbmUgICAgU1RSSU5H
Vl9jZkIoVCxBKSAoY2hhciAqKSAgIEEKI2RlZmluZSAgICBQU1RSSU5HX2NmQihULEEp
IChjaGFyICopICAgQQojZGVmaW5lICAgUFNUUklOR1ZfY2ZCKFQsQSkgKGNoYXIgKikg
ICBBCiNkZWZpbmUgICAgICBQVk9JRF9jZkIoVCxBKSAodm9pZCAqKSAgIEEKI2RlZmlu
ZSAgICBST1VUSU5FX2NmQihULEEpIChjZkNBU1RfRlVOQ1RJT04pQQojZGVmaW5lICAg
IFpUUklOR1ZfY2ZCKFQsQSkgKGNoYXIgKikgICBBCiNkZWZpbmUgICBQWlRSSU5HVl9j
ZkIoVCxBKSAoY2hhciAqKSAgIEEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAJCiNkZWZpbmUgU0NGKFROLE5B
TUUsSSxBKSAgICBfKFROLF9jZlNUUikoMyxTLE5BTUUsSSxBLDAsMCkKI2RlZmluZSAg
REVGQVVMVF9jZlMoTSxJLEEpCiNkZWZpbmUgIExPR0lDQUxfY2ZTKE0sSSxBKQojZGVm
aW5lIFBMT0dJQ0FMX2NmUyhNLEksQSkKI2RlZmluZSAgIFNUUklOR19jZlMoTSxJLEEp
ICxzaXplb2YoQSkKI2RlZmluZSAgU1RSSU5HVl9jZlMoTSxJLEEpICwoICh1bnNpZ25l
ZCkweEZGRkYqZmlyc3RpbmRleGxlbmd0aChBKSBcCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICtzZWNvbmRpbmRleGxlbmd0aChBKSkKI2RlZmluZSAgUFNUUklOR19j
ZlMoTSxJLEEpICxzaXplb2YoQSkKI2RlZmluZSBQU1RSSU5HVl9jZlMoTSxJLEEpIFNU
UklOR1ZfY2ZTKE0sSSxBKQojZGVmaW5lICBaVFJJTkdWX2NmUyhNLEksQSkKI2RlZmlu
ZSBQWlRSSU5HVl9jZlMoTSxJLEEpCgojZGVmaW5lICAgSENGKFROLEkpICAgICAgICAg
XyhUTixfY2ZTVFIpKDMsSCxjZkNPTU1BLCBILF8oQyxJKSwwLDApCiNkZWZpbmUgIEhI
Q0YoVE4sSSkgICAgICAgICBfKFROLF9jZlNUUikoMyxILGNmQ09NTUEsSEgsXyhDLEkp
LDAsMCkKI2RlZmluZSBISEhDRihUTixJKSAgICAgICAgIF8oVE4sX2NmU1RSKSgzLEgs
Y2ZDT0xPTiwgSCxfKEMsSSksMCwwKQojZGVmaW5lICBIX0NGX1NQRUNJQUwgICAgICAg
dW5zaWduZWQKI2RlZmluZSBISF9DRl9TUEVDSUFMCiNkZWZpbmUgIERFRkFVTFRfY2ZI
KE0sSSxBKQojZGVmaW5lICBMT0dJQ0FMX2NmSChTLFUsQikKI2RlZmluZSBQTE9HSUNB
TF9jZkgoUyxVLEIpCiNkZWZpbmUgICBTVFJJTkdfY2ZIKFMsVSxCKSBfKEEsUykgXyhV
LF9DRl9TUEVDSUFMKSBCCiNkZWZpbmUgIFNUUklOR1ZfY2ZIKFMsVSxCKSBTVFJJTkdf
Y2ZIKFMsVSxCKQojZGVmaW5lICBQU1RSSU5HX2NmSChTLFUsQikgU1RSSU5HX2NmSChT
LFUsQikKI2RlZmluZSBQU1RSSU5HVl9jZkgoUyxVLEIpIFNUUklOR19jZkgoUyxVLEIp
CiNkZWZpbmUgUE5TVFJJTkdfY2ZIKFMsVSxCKSBTVFJJTkdfY2ZIKFMsVSxCKQojZGVm
aW5lIFBQU1RSSU5HX2NmSChTLFUsQikgU1RSSU5HX2NmSChTLFUsQikKI2RlZmluZSAg
WlRSSU5HVl9jZkgoUyxVLEIpCiNkZWZpbmUgUFpUUklOR1ZfY2ZIKFMsVSxCKQoKLyog
TmVlZCBWT0lEX2NmU1RSIGJlY2F1c2UgQWJzb2Z0IGZvcmNlZCBmdW5jdGlvbiB0eXBl
cyBnbyB0aHJvdWdoIF9jZlNUUi4gKi8KLyogTm8gc3BhY2VzIGluc2lkZSBleHBhbnNp
b24uIFRoZXkgc2NyZXdzIHVwIG1hY3JvIGNhdGVuYXRpb24ga2x1ZGdlLiAgICAgKi8K
I2RlZmluZSAgICAgICAgICAgVk9JRF9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJH
UyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgICAgICBCWVRFX2Nm
U1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUp
CiNkZWZpbmUgICAgICAgICBET1VCTEVfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFS
R1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgICBGTE9BVF9j
ZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxF
KQojZGVmaW5lICAgICAgICAgICAgSU5UX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZB
UkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgIExPR0lDQUxf
Y2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxMT0dJQ0FMLEEsQixDLEQs
RSkKI2RlZmluZSAgICAgICAgICAgTE9OR19jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENG
QVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgICAgIFNIT1JU
X2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxE
LEUpCiNkZWZpbmUgICAgICAgICAgQllURVZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhD
RkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgIEJZVEVW
Vl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMs
RCxFKQojZGVmaW5lICAgICAgICBCWVRFVlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8o
Q0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgQllURVZW
VlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixD
LEQsRSkKI2RlZmluZSAgICAgIEJZVEVWVlZWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBf
KENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICBCWVRFVlZW
VlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIs
QyxELEUpCiNkZWZpbmUgICAgQllURVZWVlZWVlZfY2ZTVFIoTixULEEsQixDLEQsRSkg
XyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgRE9V
QkxFVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxC
LEMsRCxFKQojZGVmaW5lICAgICAgIERPVUJMRVZWX2NmU1RSKE4sVCxBLEIsQyxELEUp
IF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICBET1VC
TEVWVlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEs
QixDLEQsRSkKI2RlZmluZSAgICAgRE9VQkxFVlZWVl9jZlNUUihOLFQsQSxCLEMsRCxF
KSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgIERPVUJM
RVZWVlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxB
LEIsQyxELEUpCiNkZWZpbmUgICBET1VCTEVWVlZWVlZfY2ZTVFIoTixULEEsQixDLEQs
RSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgRE9VQkxF
VlZWVlZWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQs
QSxCLEMsRCxFKQojZGVmaW5lICAgICAgICAgRkxPQVRWX2NmU1RSKE4sVCxBLEIsQyxE
LEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAg
IEZMT0FUVlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxU
LEEsQixDLEQsRSkKI2RlZmluZSAgICAgICBGTE9BVFZWVl9jZlNUUihOLFQsQSxCLEMs
RCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAg
RkxPQVRWVlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVM
VCxBLEIsQyxELEUpCiNkZWZpbmUgICAgIEZMT0FUVlZWVlZfY2ZTVFIoTixULEEsQixD
LEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICBG
TE9BVFZWVlZWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFV
TFQsQSxCLEMsRCxFKQojZGVmaW5lICAgRkxPQVRWVlZWVlZWX2NmU1RSKE4sVCxBLEIs
QyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAg
ICAgICAgIElOVFZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZB
VUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgICBJTlRWVl9jZlNUUihOLFQsQSxC
LEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAg
ICAgICAgSU5UVlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVG
QVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgIElOVFZWVlZfY2ZTVFIoTixULEEs
QixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAg
ICAgICBJTlRWVlZWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERF
RkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgSU5UVlZWVlZWX2NmU1RSKE4sVCxB
LEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUg
ICAgIElOVFZWVlZWVlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxE
RUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICBMT0dJQ0FMVl9jZlNUUihOLFQs
QSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5l
ICAgICAgTE9HSUNBTFZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQs
REVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgIExPR0lDQUxWVlZfY2ZTVFIoTixU
LEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmlu
ZSAgICBMT0dJQ0FMVlZWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShU
LERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgTE9HSUNBTFZWVlZWX2NmU1RSKE4s
VCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZp
bmUgIExPR0lDQUxWVlZWVlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTiko
VCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSBMT0dJQ0FMVlZWVlZWVl9jZlNUUihO
LFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVm
aW5lICAgICAgICAgIExPTkdWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4p
KFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgICBMT05HVlZfY2ZTVFIo
TixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2Rl
ZmluZSAgICAgICAgTE9OR1ZWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxO
KShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgIExPTkdWVlZWX2NmU1RS
KE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNk
ZWZpbmUgICAgICBMT05HVlZWVlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1Ms
TikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgTE9OR1ZWVlZWVl9jZlNU
UihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQoj
ZGVmaW5lICAgIExPTkdWVlZWVlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdT
LE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgICBTSE9SVFZfY2ZT
VFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkK
I2RlZmluZSAgICAgICAgU0hPUlRWVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJH
UyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgIFNIT1JUVlZWX2Nm
U1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUp
CiNkZWZpbmUgICAgICBTSE9SVFZWVlZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFS
R1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgU0hPUlRWVlZWVl9j
ZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxF
KQojZGVmaW5lICAgIFNIT1JUVlZWVlZWX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZB
UkdTLE4pKFQsREVGQVVMVCxBLEIsQyxELEUpCiNkZWZpbmUgICBTSE9SVFZWVlZWVlZf
Y2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQs
RSkKI2RlZmluZSAgICAgICAgICBQQllURV9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENG
QVJHUyxOKShULERFRkFVTFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgICBQRE9VQkxF
X2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIsQyxE
LEUpCiNkZWZpbmUgICAgICAgICBQRkxPQVRfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhD
RkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgICAgUElO
VF9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFVTFQsQSxCLEMs
RCxFKQojZGVmaW5lICAgICAgIFBMT0dJQ0FMX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8o
Q0ZBUkdTLE4pKFQsUExPR0lDQUwsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgICAgIFBM
T05HX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVMVCxBLEIs
QyxELEUpCiNkZWZpbmUgICAgICAgICBQU0hPUlRfY2ZTVFIoTixULEEsQixDLEQsRSkg
XyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgIFNU
UklOR19jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULFNUUklORyxBLEIs
QyxELEUpCiNkZWZpbmUgICAgICAgIFBTVFJJTkdfY2ZTVFIoTixULEEsQixDLEQsRSkg
XyhDRkFSR1MsTikoVCxQU1RSSU5HLEEsQixDLEQsRSkKI2RlZmluZSAgICAgICAgU1RS
SU5HVl9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULFNUUklOR1YsQSxC
LEMsRCxFKQojZGVmaW5lICAgICAgIFBTVFJJTkdWX2NmU1RSKE4sVCxBLEIsQyxELEUp
IF8oQ0ZBUkdTLE4pKFQsUFNUUklOR1YsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgIFBO
U1RSSU5HX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsUE5TVFJJTkcs
QSxCLEMsRCxFKQojZGVmaW5lICAgICAgIFBQU1RSSU5HX2NmU1RSKE4sVCxBLEIsQyxE
LEUpIF8oQ0ZBUkdTLE4pKFQsUFBTVFJJTkcsQSxCLEMsRCxFKQojZGVmaW5lICAgICAg
ICAgIFBWT0lEX2NmU1RSKE4sVCxBLEIsQyxELEUpIF8oQ0ZBUkdTLE4pKFQsREVGQVVM
VCxBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgIFJPVVRJTkVfY2ZTVFIoTixULEEsQixD
LEQsRSkgXyhDRkFSR1MsTikoVCxERUZBVUxULEEsQixDLEQsRSkKI2RlZmluZSAgICAg
ICAgIFNJTVBMRV9jZlNUUihOLFQsQSxCLEMsRCxFKSBfKENGQVJHUyxOKShULERFRkFV
TFQsQSxCLEMsRCxFKQojZGVmaW5lICAgICAgICBaVFJJTkdWX2NmU1RSKE4sVCxBLEIs
QyxELEUpIF8oQ0ZBUkdTLE4pKFQsWlRSSU5HVixBLEIsQyxELEUpCiNkZWZpbmUgICAg
ICAgUFpUUklOR1ZfY2ZTVFIoTixULEEsQixDLEQsRSkgXyhDRkFSR1MsTikoVCxQWlRS
SU5HVixBLEIsQyxELEUpCiNkZWZpbmUgICAgICAgICAgIENGXzBfY2ZTVFIoTixULEEs
QixDLEQsRSkKCi8qIFNlZSBBQ0YgdGFibGUgY29tbWVudHMsIHdoaWNoIGV4cGxhaW4g
d2h5IENDRiB3YXMgc3BsaXQgaW50byB0d28uICovCiNkZWZpbmUgQ0NGKE5BTUUsVE4s
SSkgICAgIF8oVE4sX2NmU1RSKSg1LEMsTkFNRSxJLF8oQSxJKSxfKEIsSSksXyhDLEkp
KQojZGVmaW5lICBERUZBVUxUX2NmQyhNLEksQSxCLEMpCiNkZWZpbmUgIExPR0lDQUxf
Y2ZDKE0sSSxBLEIsQykgIEE9QzJGTE9HSUNBTCggQSk7CiNkZWZpbmUgUExPR0lDQUxf
Y2ZDKE0sSSxBLEIsQykgKkE9QzJGTE9HSUNBTCgqQSk7CiNpZmRlZiB2bXNGb3J0cmFu
CiNkZWZpbmUgICBTVFJJTkdfY2ZDKE0sSSxBLEIsQykgKEIuY2xlbj1zdHJsZW4oQSks
Qi5mLmRzYyRhX3BvaW50ZXI9QSwgICAgICAgICBcCiAgICAgICAgQz09c2l6ZW9mKGNo
YXIqKXx8Qz09KHVuc2lnbmVkKShCLmNsZW4rMSk/Qi5mLmRzYyR3X2xlbmd0aD1CLmNs
ZW46ICAgICBcCiAgICAgICAgICAobWVtc2V0KChBKStCLmNsZW4sJyAnLEMtQi5jbGVu
LTEpLEFbQi5mLmRzYyR3X2xlbmd0aD1DLTFdPSdcMCcpKTsKICAgICAgLyogUFNUUklO
R19jZkMgdG8gYmV3YXJlIG9mIGFycmF5IEEgd2hpY2ggZG9lcyBub3QgY29udGFpbiBh
bnkgXDAuICAgICAgKi8KI2RlZmluZSAgUFNUUklOR19jZkMoTSxJLEEsQixDKSAoQi5k
c2MkYV9wb2ludGVyPUEsIEM9PXNpemVvZihjaGFyKikgPyAgICAgICAgIFwKICAgICAg
ICAgICAgIEIuZHNjJHdfbGVuZ3RoPXN0cmxlbihBKTogIChBW0MtMV09J1wwJyxCLmRz
YyR3X2xlbmd0aD1zdHJsZW4oQSksIFwKICAgICAgIG1lbXNldCgoQSkrQi5kc2Mkd19s
ZW5ndGgsJyAnLEMtQi5kc2Mkd19sZW5ndGgtMSksIEIuZHNjJHdfbGVuZ3RoPUMtMSkp
OwojZWxzZQojZGVmaW5lICAgU1RSSU5HX2NmQyhNLEksQSxCLEMpIChCLmNsZW49c3Ry
bGVuKEEpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAg
ICAgQz09c2l6ZW9mKGNoYXIqKXx8Qz09KHVuc2lnbmVkKShCLmNsZW4rMSk/Qi5mbGVu
PUIuY2xlbjogICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAobWVtc2V0KChB
KStCLmNsZW4sJyAnLEMtQi5jbGVuLTEpLEFbQi5mbGVuPUMtMV09J1wwJykpOwojZGVm
aW5lICBQU1RSSU5HX2NmQyhNLEksQSxCLEMpIChDPT1zaXplb2YoY2hhciopPyBCPXN0
cmxlbihBKTogICAgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAgIChBW0Mt
MV09J1wwJyxCPXN0cmxlbihBKSxtZW1zZXQoKEEpK0IsJyAnLEMtQi0xKSxCPUMtMSkp
OwojZW5kaWYKICAgICAgICAgIC8qIEZvciBDUkFZRm9ydHJhbiBmb3IgKFApU1RSSU5H
Vl9jZkMsIEIuZnMgaXMgc2V0LCBidXQgaXJyZWxldmFudC4gKi8KI2RlZmluZSAgU1RS
SU5HVl9jZkMoTSxJLEEsQixDKSBcCiAgICAgICAgQUFUUklOR1ZfY2ZBKCAgICBBLEIs
KEMvMHhGRkZGKSooQyUweEZGRkYpLEMvMHhGRkZGLEMlMHhGRkZGKQojZGVmaW5lIFBT
VFJJTkdWX2NmQyhNLEksQSxCLEMpIFwKICAgICAgIEFQQVRSSU5HVl9jZkEoICAgIEEs
QiwoQy8weEZGRkYpKihDJTB4RkZGRiksQy8weEZGRkYsQyUweEZGRkYpCiNkZWZpbmUg
IFpUUklOR1ZfY2ZDKE0sSSxBLEIsQykgXAogICAgICAgIEFBVFJJTkdWX2NmQSggICAg
QSxCLCAoXzMoTSxfRUxFTVNfLEkpKSooKF8zKE0sX0VMRU1MRU5fLEkpKSsxKSwgICAg
ICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXzMoTSxfRUxFTVNfLEkp
KSwgKF8zKE0sX0VMRU1MRU5fLEkpKSsxICAgKQojZGVmaW5lIFBaVFJJTkdWX2NmQyhN
LEksQSxCLEMpIFwKICAgICAgIEFQQVRSSU5HVl9jZkEoICAgIEEsQiwgKF8zKE0sX0VM
RU1TXyxJKSkqKChfMyhNLF9FTEVNTEVOXyxJKSkrMSksICAgICAgIFwKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgKF8zKE0sX0VMRU1TXyxJKSksIChfMyhNLF9FTEVN
TEVOXyxJKSkrMSAgICkKCiNkZWZpbmUgICAgIEJZVEVfY2ZDQ0MoQSxCKSAmQQojZGVm
aW5lICAgRE9VQkxFX2NmQ0NDKEEsQikgJkEKI2lmICFkZWZpbmVkKF9fQ0ZfX0tuUikK
I2RlZmluZSAgICBGTE9BVF9jZkNDQyhBLEIpICZBCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAvKiBBbHRob3VnaCB0aGUgVkFYIGRvZXNuJ3QsIGF0IGxlYXN0IHRo
ZSAgICAgICovCiNlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBIUCBhbmQg
SyZSIG1pcHMgcHJvbW90ZSBmbG9hdCBhcmcuJ3Mgb2YgICAgICovCiNkZWZpbmUgICAg
RkxPQVRfY2ZDQ0MoQSxCKSAmQiAvKiB1bnByb3RvdHlwZWQgZnVuY3Rpb25zIHRvIGRv
dWJsZS4gQ2Fubm90ICAgICovCiNlbmRpZiAgICAgICAgICAgICAgICAgICAgICAgICAv
KiB1c2UgQSBoZXJlIHRvIHBhc3MgdGhlIGFyZ3VtZW50IHRvIEZPUlRSQU4uICovCiNk
ZWZpbmUgICAgICBJTlRfY2ZDQ0MoQSxCKSAmQQojZGVmaW5lICBMT0dJQ0FMX2NmQ0ND
KEEsQikgJkEKI2RlZmluZSAgICAgTE9OR19jZkNDQyhBLEIpICZBCiNkZWZpbmUgICAg
U0hPUlRfY2ZDQ0MoQSxCKSAmQQojZGVmaW5lICAgIFBCWVRFX2NmQ0NDKEEsQikgIEEK
I2RlZmluZSAgUERPVUJMRV9jZkNDQyhBLEIpICBBCiNkZWZpbmUgICBQRkxPQVRfY2ZD
Q0MoQSxCKSAgQQojZGVmaW5lICAgICBQSU5UX2NmQ0NDKEEsQikgIEEKI2RlZmluZSBQ
TE9HSUNBTF9jZkNDQyhBLEIpICBCPUEgICAgICAgLyogQiB1c2VkIHRvIGtlZXAgYSBj
b21tb24gVyB0YWJsZS4gKi8KI2RlZmluZSAgICBQTE9OR19jZkNDQyhBLEIpICBBCiNk
ZWZpbmUgICBQU0hPUlRfY2ZDQ0MoQSxCKSAgQQoKI2RlZmluZSBDQ0NGKFROLEksTSkg
ICAgICAgICAgIF9TRVBfKFROLE0sY2ZDT01NQSkgX0ljZigzLENDLFROLF8oQSxJKSxf
KEIsSSkpCiNkZWZpbmUgICAgICAgIElOVF9jZkNDKFQsQSxCKSBfKFQsX2NmQ0NDKShB
LEIpIAojZGVmaW5lICAgICAgIElOVFZfY2ZDQyhULEEsQikgIEEKI2RlZmluZSAgICAg
IElOVFZWX2NmQ0MoVCxBLEIpICBBCiNkZWZpbmUgICAgIElOVFZWVl9jZkNDKFQsQSxC
KSAgQQojZGVmaW5lICAgIElOVFZWVlZfY2ZDQyhULEEsQikgIEEKI2RlZmluZSAgIElO
VFZWVlZWX2NmQ0MoVCxBLEIpICBBCiNkZWZpbmUgIElOVFZWVlZWVl9jZkNDKFQsQSxC
KSAgQQojZGVmaW5lIElOVFZWVlZWVlZfY2ZDQyhULEEsQikgIEEKI2RlZmluZSAgICAg
ICBQSU5UX2NmQ0MoVCxBLEIpIF8oVCxfY2ZDQ0MpKEEsQikgCiNkZWZpbmUgICAgICBQ
Vk9JRF9jZkNDKFQsQSxCKSAgQQojaWYgZGVmaW5lZChhcG9sbG9Gb3J0cmFuKSB8fCBk
ZWZpbmVkKGhwdXhGb3J0cmFuODAwKSB8fCBkZWZpbmVkKEFic29mdFVOSVhGb3J0cmFu
KQojZGVmaW5lICAgIFJPVVRJTkVfY2ZDQyhULEEsQikgJkEKI2Vsc2UKI2RlZmluZSAg
ICBST1VUSU5FX2NmQ0MoVCxBLEIpICBBCiNlbmRpZgojZGVmaW5lICAgICBTSU1QTEVf
Y2ZDQyhULEEsQikgIEEKI2lmZGVmIHZtc0ZvcnRyYW4KI2RlZmluZSAgICAgU1RSSU5H
X2NmQ0MoVCxBLEIpICZCLmYKI2RlZmluZSAgICBTVFJJTkdWX2NmQ0MoVCxBLEIpICZC
CiNkZWZpbmUgICAgUFNUUklOR19jZkNDKFQsQSxCKSAmQgojZGVmaW5lICAgUFNUUklO
R1ZfY2ZDQyhULEEsQikgJkIKI2Vsc2UKI2lmZGVmIENSQVlGb3J0cmFuCiNkZWZpbmUg
ICAgIFNUUklOR19jZkNDKFQsQSxCKSBfY3B0b2ZjZChBLEIuZmxlbikKI2RlZmluZSAg
ICBTVFJJTkdWX2NmQ0MoVCxBLEIpIF9jcHRvZmNkKEIucyxCLmZsZW4pCiNkZWZpbmUg
ICAgUFNUUklOR19jZkNDKFQsQSxCKSBfY3B0b2ZjZChBLEIpCiNkZWZpbmUgICBQU1RS
SU5HVl9jZkNDKFQsQSxCKSBfY3B0b2ZjZChBLEIuZmxlbikKI2Vsc2UKI2RlZmluZSAg
ICAgU1RSSU5HX2NmQ0MoVCxBLEIpICBBCiNkZWZpbmUgICAgU1RSSU5HVl9jZkNDKFQs
QSxCKSAgQi5mcwojZGVmaW5lICAgIFBTVFJJTkdfY2ZDQyhULEEsQikgIEEKI2RlZmlu
ZSAgIFBTVFJJTkdWX2NmQ0MoVCxBLEIpICBCLmZzCiNlbmRpZgojZW5kaWYKI2RlZmlu
ZSAgICBaVFJJTkdWX2NmQ0MoVCxBLEIpICAgU1RSSU5HVl9jZkNDKFQsQSxCKQojZGVm
aW5lICAgUFpUUklOR1ZfY2ZDQyhULEEsQikgIFBTVFJJTkdWX2NmQ0MoVCxBLEIpCgoj
ZGVmaW5lICAgIEJZVEVfY2ZYICByZXR1cm4gQTA7CiNkZWZpbmUgIERPVUJMRV9jZlgg
IHJldHVybiBBMDsKI2lmICEgKGRlZmluZWQoRkxPQVRGVU5DVElPTlRZUEUpJiZkZWZp
bmVkKEFTU0lHTkZMT0FUKSYmZGVmaW5lZChSRVRVUk5GTE9BVCkpCiNkZWZpbmUgICBG
TE9BVF9jZlggIHJldHVybiBBMDsKI2Vsc2UKI2RlZmluZSAgIEZMT0FUX2NmWCAgQVNT
SUdORkxPQVQoQUEwLEEwKTsgcmV0dXJuIEFBMDsKI2VuZGlmCiNkZWZpbmUgICAgIElO
VF9jZlggIHJldHVybiBBMDsKI2RlZmluZSBMT0dJQ0FMX2NmWCAgcmV0dXJuIEYyQ0xP
R0lDQUwoQTApOwojZGVmaW5lICAgIExPTkdfY2ZYICByZXR1cm4gQTA7CiNkZWZpbmUg
ICBTSE9SVF9jZlggIHJldHVybiBBMDsKI2RlZmluZSAgICBWT0lEX2NmWCAgcmV0dXJu
ICAgOwojaWYgZGVmaW5lZCh2bXNGb3J0cmFuKSB8fCBkZWZpbmVkKENSQVlGb3J0cmFu
KQojZGVmaW5lICBTVFJJTkdfY2ZYICByZXR1cm4ga2lsbF90cmFpbGluZyggICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGtpbGxfdHJhaWxpbmcoQUEwLENGT1JUUkFOX05PTl9D
SEFSKSwnICcpOwojZWxzZQojZGVmaW5lICBTVFJJTkdfY2ZYICByZXR1cm4ga2lsbF90
cmFpbGluZyggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtpbGxfdHJhaWxpbmcoIEEw
LENGT1JUUkFOX05PTl9DSEFSKSwnICcpOwojZW5kaWYKCiNkZWZpbmUgQ0ZGVU4oTkFN
RSkgXyhfX2NmX18sTkFNRSkKCi8qIE5vdGUgdGhhdCB3ZSBkb24ndCB1c2UgTE4gaGVy
ZSwgYnV0IHdlIGtlZXAgaXQgZm9yIGNvbnNpc3RlbmN5LiAqLwojZGVmaW5lIENDQUxM
U0ZGVU4wKFVOLExOKSBDRkZVTihVTikoKQoKI2lmZGVmIE9MRF9WQVhDICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEFsbG93ICVDQy1JLVBBUkFNTk9UVVNF
RC4gKi8KI3ByYWdtYSBzdGFuZGFyZAojZW5kaWYKCiNkZWZpbmUgQ0NBTExTRkZVTjEo
IFVOLExOLFQxLCAgICAgICAgICAgICAgICAgICAgICAgIEExKSAgICAgICAgIFwKICAg
ICAgICBDQ0FMTFNGRlVONSAoVU4sTE4sVDEsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxBMSww
LDAsMCwwKQojZGVmaW5lIENDQUxMU0ZGVU4yKCBVTixMTixUMSxUMiwgICAgICAgICAg
ICAgICAgICAgICBBMSxBMikgICAgICBcCiAgICAgICAgQ0NBTExTRkZVTjUgKFVOLExO
LFQxLFQyLENGXzAsQ0ZfMCxDRl8wLEExLEEyLDAsMCwwKQojZGVmaW5lIENDQUxMU0ZG
VU4zKCBVTixMTixUMSxUMixUMywgICAgICAgICAgICAgICAgICBBMSxBMixBMykgICBc
CiAgICAgICAgQ0NBTExTRkZVTjUgKFVOLExOLFQxLFQyLFQzLENGXzAsQ0ZfMCxBMSxB
MixBMywwLDApCiNkZWZpbmUgQ0NBTExTRkZVTjQoIFVOLExOLFQxLFQyLFQzLFQ0LCAg
ICAgICAgICAgICAgIEExLEEyLEEzLEE0KVwKICAgICAgICBDQ0FMTFNGRlVONSAoVU4s
TE4sVDEsVDIsVDMsVDQsQ0ZfMCxBMSxBMixBMyxBNCwwKQojZGVmaW5lIENDQUxMU0ZG
VU41KCBVTixMTixUMSxUMixUMyxUNCxUNSwgICAgICAgICAgICBBMSxBMixBMyxBNCxB
NSkgICAgICAgICAgXAogICAgICAgIENDQUxMU0ZGVU4xMChVTixMTixUMSxUMixUMyxU
NCxUNSxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQTEsQTIsQTMsQTQsQTUsMCwwLDAs
MCwwKQojZGVmaW5lIENDQUxMU0ZGVU42KCBVTixMTixUMSxUMixUMyxUNCxUNSxUNiwg
ICAgICAgICBBMSxBMixBMyxBNCxBNSxBNikgICAgICAgXAogICAgICAgIENDQUxMU0ZG
VU4xMChVTixMTixUMSxUMixUMyxUNCxUNSxUNixDRl8wLENGXzAsQ0ZfMCxDRl8wLEEx
LEEyLEEzLEE0LEE1LEE2LDAsMCwwLDApCiNkZWZpbmUgQ0NBTExTRkZVTjcoIFVOLExO
LFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LCAgICAgIEExLEEyLEEzLEE0LEE1LEE2LEE3KSAg
ICBcCiAgICAgICAgQ0NBTExTRkZVTjEwKFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LENGXzAsQ0ZfMCxDRl8wLEExLEEyLEEzLEE0LEE1LEE2LEE3LDAsMCwwKQojZGVmaW5l
IENDQUxMU0ZGVU44KCBVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCwgICBBMSxB
MixBMyxBNCxBNSxBNixBNyxBOCkgXAogICAgICAgIENDQUxMU0ZGVU4xMChVTixMTixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxDRl8wLENGXzAsQTEsQTIsQTMsQTQsQTUsQTYs
QTcsQTgsMCwwKQojZGVmaW5lIENDQUxMU0ZGVU45KCBVTixMTixUMSxUMixUMyxUNCxU
NSxUNixUNyxUOCxUOSxBMSxBMixBMyxBNCxBNSxBNixBNyxBOCxBOSlcCiAgICAgICAg
Q0NBTExTRkZVTjEwKFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LENGXzAs
QTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksMCkKI2RlZmluZSBDQ0FMTFNGRlVOMTAo
VU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsQTEsQTIsQTMsQTQsQTUs
QTYsQTcsQTgsQTksQUEpXAogICAgICAgIENDQUxMU0ZGVU4xNChVTixMTixUMSxUMixU
MyxUNCxUNSxUNixUNyxUOCxUOSxUQSxDRl8wLENGXzAsQ0ZfMCxDRl8wLEExLEEyLEEz
LEE0LEE1LEE2LEE3LEE4LEE5LEFBLDAsMCwwLDApCiNkZWZpbmUgQ0NBTExTRkZVTjEx
KFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLEExLEEyLEEzLEE0
LEE1LEE2LEE3LEE4LEE5LEFBLEFCKVwKICAgICAgICBDQ0FMTFNGRlVOMTQoVU4sTE4s
VDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsQ0ZfMCxDRl8wLENGXzAsQTEs
QTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsMCwwLDApCiNkZWZpbmUgQ0NBTExT
RkZVTjEyKFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLEEx
LEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFBLEFCLEFDKVwKICAgICAgICBDQ0FMTFNG
RlVOMTQoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsQ0Zf
MCxDRl8wLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFBLEFCLEFDLDAsMCkKI2Rl
ZmluZSBDQ0FMTFNGRlVOMTMoVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDks
VEEsVEIsVEMsVEQsQTEsQTIsQTMsQTQsQTUsQTYsQTcsQTgsQTksQUEsQUIsQUMsQUQp
XAogICAgICAgIENDQUxMU0ZGVU4xNChVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxU
OCxUOSxUQSxUQixUQyxURCxDRl8wLEExLEEyLEEzLEE0LEE1LEE2LEE3LEE4LEE5LEFB
LEFCLEFDLEFELDApCgojZGVmaW5lIENDQUxMU0ZGVU4xNChVTixMTixUMSxUMixUMyxU
NCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxBMSxBMixBMyxBNCxBNSxBNixB
NyxBOCxBOSxBQSxBQixBQyxBRCxBRSlcCigoQ0ZGVU4oVU4pKCAgQkNGKFQxLEExLDAp
IEJDRihUMixBMiwxKSBCQ0YoVDMsQTMsMSkgQkNGKFQ0LEE0LDEpIEJDRihUNSxBNSwx
KSBcCiAgICAgICAgICAgICAgQkNGKFQ2LEE2LDEpIEJDRihUNyxBNywxKSBCQ0YoVDgs
QTgsMSkgQkNGKFQ5LEE5LDEpIEJDRihUQSxBQSwxKSBcCiAgICAgICAgICAgICAgQkNG
KFRCLEFCLDEpIEJDRihUQyxBQywxKSBCQ0YoVEQsQUQsMSkgQkNGKFRFLEFFLDEpICAg
ICAgICAgICAgICBcCiAgICAgICAgICAgU0NGKFQxLExOLDEsQTEpICBTQ0YoVDIsTE4s
MixBMikgIFNDRihUMyxMTiwzLEEzKSAgU0NGKFQ0LExOLDQsQTQpICBcCiAgICAgICAg
ICAgU0NGKFQ1LExOLDUsQTUpICBTQ0YoVDYsTE4sNixBNikgIFNDRihUNyxMTiw3LEE3
KSAgU0NGKFQ4LExOLDgsQTgpICBcCiAgICAgICAgICAgU0NGKFQ5LExOLDksQTkpICBT
Q0YoVEEsTE4sMTAsQUEpIFNDRihUQixMTiwxMSxBQikgU0NGKFRDLExOLDEyLEFDKSBc
CiAgICAgICAgICAgU0NGKFRELExOLDEzLEFEKSBTQ0YoVEUsTE4sMTQsQUUpKSkpCgov
KiAgTi5CLiBDcmVhdGUgYSBzZXBhcmF0ZSBmdW5jdGlvbiBpbnN0ZWFkIG9mIHVzaW5n
IChjYWxsIGZ1bmN0aW9uLCBmdW5jdGlvbgp2YWx1ZSBoZXJlKSBiZWNhdXNlIGluIG9y
ZGVyIHRvIGNyZWF0ZSB0aGUgdmFyaWFibGVzIG5lZWRlZCBmb3IgdGhlIGlucHV0CmFy
Zy4ncyB3aGljaCBtYXkgYmUgY29uc3QuJ3Mgb25lIGhhcyB0byBkbyB0aGUgY3JlYXRp
b24gd2l0aGluIHt9LCBidXQgdGhlc2UKY2FuIG5ldmVyIGJlIHBsYWNlZCB3aXRoaW4g
KCkncy4gVGhlcmVmb3JlIG9uZSBtdXN0IGNyZWF0ZSB3cmFwcGVyIGZ1bmN0aW9ucy4K
Z2NjLCBvbiB0aGUgb3RoZXIgaGFuZCBtYXkgYmUgYWJsZSB0byBhdm9pZCB0aGUgd3Jh
cHBlciBmdW5jdGlvbnMuICovCgovKiBQcm90b3R5cGVzIGFyZSBuZWVkZWQgdG8gY29y
cmVjdGx5IGhhbmRsZSB0aGUgdmFsdWUgcmV0dXJuZWQgY29ycmVjdGx5LiBOLkIuCkNh
biBvbmx5IGhhdmUgcHJvdG90eXBlIGFyZy4ncyB3aXRoIGRpZmZpY3VsdHksIGEgbGEg
Ry4uLiB0YWJsZSBzaW5jZSBGT1JUUkFOCmZ1bmN0aW9ucyByZXR1cm5pbmcgc3RyaW5n
cyBoYXZlIGV4dHJhIGFyZy4ncy4gRG9uJ3QgYm90aGVyLCBzaW5jZSB0aGlzIG9ubHkK
Y2F1c2VzIGEgY29tcGlsZXIgd2FybmluZyB0byBjb21lIHVwIHdoZW4gb25lIHVzZXMg
RkNBTExTQ0ZVTm4gYW5kIENDQUxMU0ZGVU5uCmZvciB0aGUgc2FtZSBmdW5jdGlvbiBp
biB0aGUgc2FtZSBzb3VyY2UgY29kZS4gU29tZXRoaW5nIGRvbmUgYnkgdGhlIGV4cGVy
dHMgaW4KZGVidWdnaW5nIG9ubHkuKi8gICAgCgojZGVmaW5lIFBST1RPQ0NBTExTRkZV
TjAoRixVTixMTikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgXApfKEYsX2NmUFUpKCBDRkNfKFVOLExOKSkoQ0ZfTlVMTF9QUk9UTyk7ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXApzdGF0aWMgX0ljZigy
LFUsRixDRkZVTihVTiksMCkoKSB7XyhGLF9jZkUpIF9JY2YoMyxHWixGLFVOLExOKSBB
QlNPRlRfY2YxKEYpKTtfKEYsX2NmWCl9CgojZGVmaW5lIFBST1RPQ0NBTExTRkZVTjEo
IFQwLFVOLExOLFQxKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgXAogICAgICAgIFBST1RPQ0NBTExTRkZVTjUgKFQwLFVOLExOLFQxLENGXzAsQ0Zf
MCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGRlVOMiggVDAsVU4sTE4sVDEs
VDIpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAg
UFJPVE9DQ0FMTFNGRlVONSAoVDAsVU4sTE4sVDEsVDIsQ0ZfMCxDRl8wLENGXzApCiNk
ZWZpbmUgUFJPVE9DQ0FMTFNGRlVOMyggVDAsVU4sTE4sVDEsVDIsVDMpICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAgUFJPVE9DQ0FMTFNGRlVO
NSAoVDAsVU4sTE4sVDEsVDIsVDMsQ0ZfMCxDRl8wKQojZGVmaW5lIFBST1RPQ0NBTExT
RkZVTjQoIFQwLFVOLExOLFQxLFQyLFQzLFQ0KSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXAogICAgICAgIFBST1RPQ0NBTExTRkZVTjUgKFQwLFVOLExOLFQxLFQy
LFQzLFQ0LENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGRlVONSggVDAsVU4sTE4sVDEs
VDIsVDMsVDQsVDUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICAg
UFJPVE9DQ0FMTFNGRlVOMTAoVDAsVU4sTE4sVDEsVDIsVDMsVDQsVDUsQ0ZfMCxDRl8w
LENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIFBST1RPQ0NBTExTRkZVTjYoIFQwLFVOLExO
LFQxLFQyLFQzLFQ0LFQ1LFQ2KSAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAg
ICAgIFBST1RPQ0NBTExTRkZVTjEwKFQwLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LENG
XzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGRlVONyggVDAsVU4s
TE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcpICAgICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgUFJPVE9DQ0FMTFNGRlVOMTAoVDAsVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGRlVOOCggVDAsVU4s
TE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgpICAgICAgICAgICAgICAgICAgICBcCiAg
ICAgICAgUFJPVE9DQ0FMTFNGRlVOMTAoVDAsVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsQ0ZfMCxDRl8wKQojZGVmaW5lIFBST1RPQ0NBTExTRkZVTjkoIFQwLFVOLExO
LFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5KSAgICAgICAgICAgICAgICAgXAogICAg
ICAgIFBST1RPQ0NBTExTRkZVTjEwKFQwLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LFQ4LFQ5LENGXzApCiNkZWZpbmUgUFJPVE9DQ0FMTFNGRlVOMTAoVDAsVU4sTE4sVDEs
VDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEpICAgICAgICAgICAgICBcCiAgICAgICAg
UFJPVE9DQ0FMTFNGRlVOMTQoVDAsVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgs
VDksVEEsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCkKI2RlZmluZSBQUk9UT0NDQUxMU0ZGVU4x
MShUMCxVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQikgICAgICAg
ICAgIFwKICAgICAgICBQUk9UT0NDQUxMU0ZGVU4xNChUMCxVTixMTixUMSxUMixUMyxU
NCxUNSxUNixUNyxUOCxUOSxUQSxUQixDRl8wLENGXzAsQ0ZfMCkKI2RlZmluZSBQUk9U
T0NDQUxMU0ZGVU4xMihUMCxVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQykgICAgICAgIFwKICAgICAgICBQUk9UT0NDQUxMU0ZGVU4xNChUMCxVTixM
TixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxDRl8wLENGXzApCiNk
ZWZpbmUgUFJPVE9DQ0FMTFNGRlVOMTMoVDAsVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsVDksVEEsVEIsVEMsVEQpICAgICBcCiAgICAgICAgUFJPVE9DQ0FMTFNGRlVO
MTQoVDAsVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQs
Q0ZfMCkKCi8qIEhQL1VYIDkuMDEgY2MgcmVxdWlyZXMgdGhlIGJsYW5rIGJldHdlZW4g
J19JY2YoMyxHLFQwLFVOLExOKSBDQ0NGKFQxLDEsMCknICovCgojaWZuZGVmIF9fQ0Zf
X0tuUgojZGVmaW5lIFBST1RPQ0NBTExTRkZVTjE0KFQwLFVOLExOLFQxLFQyLFQzLFQ0
LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFKSAgXAogXyhUMCxfY2ZQVSkoQ0ZD
XyhVTixMTikpKENGX05VTExfUFJPVE8pOyBzdGF0aWMgX0ljZigyLFUsVDAsQ0ZGVU4o
VU4pLDApKCAgICAgXAogICBDRkFSR1QxNEZTKFVDRixIQ0YsX1osVDEsVDIsVDMsVDQs
VDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpICkgICAgICAgICAgXAp7ICAgICAg
IENGQVJHVDE0UyhWQ0YsVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMs
VEQsVEUpICAgIF8oVDAsX2NmRSkgXAogQ0NGKExOLFQxLDEpICBDQ0YoTE4sVDIsMikg
IENDRihMTixUMywzKSAgQ0NGKExOLFQ0LDQpICBDQ0YoTE4sVDUsNSkgICAgICAgICAg
XAogQ0NGKExOLFQ2LDYpICBDQ0YoTE4sVDcsNykgIENDRihMTixUOCw4KSAgQ0NGKExO
LFQ5LDkpICBDQ0YoTE4sVEEsMTApICAgICAgICAgXAogQ0NGKExOLFRCLDExKSBDQ0Yo
TE4sVEMsMTIpIENDRihMTixURCwxMykgQ0NGKExOLFRFLDE0KSAgICBfSWNmKDMsRyxU
MCxVTixMTikgXAogQ0ZBUkdUMTQoQ0NDRixKQ0YsQUJTT0ZUX2NmMShUMCksVDEsVDIs
VDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpKTsgXAogV0NGKFQxLEEx
LDEpICAgV0NGKFQyLEEyLDIpICAgV0NGKFQzLEEzLDMpICAgV0NGKFQ0LEE0LDQpICBX
Q0YoVDUsQTUsNSkgICAgICAgXAogV0NGKFQ2LEE2LDYpICAgV0NGKFQ3LEE3LDcpICAg
V0NGKFQ4LEE4LDgpICAgV0NGKFQ5LEE5LDkpICBXQ0YoVEEsQTEwLDEwKSAgICAgXAog
V0NGKFRCLEExMSwxMSkgV0NGKFRDLEExMiwxMikgV0NGKFRELEExMywxMykgV0NGKFRF
LEExNCwxNCkgXyhUMCxfY2ZYKX0KI2Vsc2UKI2RlZmluZSBQUk9UT0NDQUxMU0ZGVU4x
NChUMCxVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSkgIFwKIF8oVDAsX2NmUFUpKENGQ18oVU4sTE4pKShDRl9OVUxMX1BST1RPKTsgc3Rh
dGljIF9JY2YoMixVLFQwLENGRlVOKFVOKSwwKSggICAgIFwKICAgQ0ZBUkdUMTRGUyhV
VUNGLEhIQ0YsX1osVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQs
VEUpICkgICAgICAgIFwKIENGQVJHVDE0RlMoVVVVQ0YsSEhIQ0YsX1osVDEsVDIsVDMs
VDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpIDsgICAgICAgIFwKeyAgICAg
ICBDRkFSR1QxNFMoVkNGLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRD
LFRELFRFKSAgICBfKFQwLF9jZkUpIFwKIENDRihMTixUMSwxKSAgQ0NGKExOLFQyLDIp
ICBDQ0YoTE4sVDMsMykgIENDRihMTixUNCw0KSAgQ0NGKExOLFQ1LDUpICAgICAgICAg
IFwKIENDRihMTixUNiw2KSAgQ0NGKExOLFQ3LDcpICBDQ0YoTE4sVDgsOCkgIENDRihM
TixUOSw5KSAgQ0NGKExOLFRBLDEwKSAgICAgICAgIFwKIENDRihMTixUQiwxMSkgQ0NG
KExOLFRDLDEyKSBDQ0YoTE4sVEQsMTMpIENDRihMTixURSwxNCkgICAgX0ljZigzLEcs
VDAsVU4sTE4pIFwKIENGQVJHVDE0KENDQ0YsSkNGLEFCU09GVF9jZjEoVDApLFQxLFQy
LFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFKSk7IFwKIFdDRihUMSxB
MSwxKSAgIFdDRihUMixBMiwyKSAgIFdDRihUMyxBMywzKSAgIFdDRihUNCxBNCw0KSAg
IFdDRihUNSxBNSw1KSAgICAgIFwKIFdDRihUNixBNiw2KSAgIFdDRihUNyxBNyw3KSAg
IFdDRihUOCxBOCw4KSAgIFdDRihUOSxBOSw5KSAgIFdDRihUQSxBMTAsMTApICAgIFwK
IFdDRihUQixBMTEsMTEpIFdDRihUQyxBMTIsMTIpIFdDRihURCxBMTMsMTMpIFdDRihU
RSxBMTQsMTQpIF8oVDAsX2NmWCl9CiNlbmRpZgoKLyotLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tKi8KCi8qICAgICAgICAgICAgICAgVVRJTElUSUVTIEZPUiBGT1JUUkFOIFRPIENB
TEwgQyBST1VUSU5FUyAgICAgICAgICAgICAgICAgICovCgojaWZkZWYgT0xEX1ZBWEMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFByZXZlbnQgJUNDLUktUEFS
QU1OT1RVU0VELiAqLwojcHJhZ21hIG5vc3RhbmRhcmQKI2VuZGlmCgojaWYgZGVmaW5l
ZCh2bXNGb3J0cmFuKSB8fCBkZWZpbmVkKENSQVlGb3J0cmFuKQojZGVmaW5lICAgRENG
KFROLEkpCiNkZWZpbmUgIEREQ0YoVE4sSSkKI2RlZmluZSBERERDRihUTixJKQojZWxz
ZQojZGVmaW5lICAgRENGKFROLEkpICAgICAgICAgIEhDRihUTixJKQojZGVmaW5lICBE
RENGKFROLEkpICAgICAgICAgSEhDRihUTixJKQojZGVmaW5lIERERENGKFROLEkpICAg
ICAgICBISEhDRihUTixJKQojZW5kaWYKCiNkZWZpbmUgUUNGKFROLEkpICAgICAgIF8o
VE4sX2NmU1RSKSgxLFEsXyhCLEkpLCAwLDAsMCwwKQojZGVmaW5lICBERUZBVUxUX2Nm
UShCKQojZGVmaW5lICBMT0dJQ0FMX2NmUShCKQojZGVmaW5lIFBMT0dJQ0FMX2NmUShC
KQojZGVmaW5lICBTVFJJTkdWX2NmUShCKSBjaGFyICpCOyB1bnNpZ25lZCBpbnQgXyhC
LE4pOwojZGVmaW5lICAgU1RSSU5HX2NmUShCKSBjaGFyICpCPU5VTEw7CiNkZWZpbmUg
IFBTVFJJTkdfY2ZRKEIpIGNoYXIgKkI9TlVMTDsKI2RlZmluZSBQU1RSSU5HVl9jZlEo
QikgU1RSSU5HVl9jZlEoQikKI2RlZmluZSBQTlNUUklOR19jZlEoQikgY2hhciAqQj1O
VUxMOwojZGVmaW5lIFBQU1RSSU5HX2NmUShCKQoKI2lmZGVmICAgICBfX3NnaSAgIC8q
IEVsc2UgU0dJIGdpdmVzIHdhcm5pbmcgMTgyIGNvbnRyYXJ5IHRvIGl0cyBDIExSTSBB
LjE3LjcgKi8KI2RlZmluZSBST1VUSU5FX29yaWcgICAgKih2b2lkKiopJiAKI2Vsc2UK
I2RlZmluZSBST1VUSU5FX29yaWcgICAgICh2b2lkICopICAKI2VuZGlmCgojZGVmaW5l
IFJPVVRJTkVfMSAgICAgUk9VVElORV9vcmlnICAgCiNkZWZpbmUgUk9VVElORV8yICAg
ICBST1VUSU5FX29yaWcgICAKI2RlZmluZSBST1VUSU5FXzMgICAgIFJPVVRJTkVfb3Jp
ZyAgIAojZGVmaW5lIFJPVVRJTkVfNCAgICAgUk9VVElORV9vcmlnICAgCiNkZWZpbmUg
Uk9VVElORV81ICAgICBST1VUSU5FX29yaWcgICAKI2RlZmluZSBST1VUSU5FXzYgICAg
IFJPVVRJTkVfb3JpZyAgIAojZGVmaW5lIFJPVVRJTkVfNyAgICAgUk9VVElORV9vcmln
ICAgCiNkZWZpbmUgUk9VVElORV84ICAgICBST1VUSU5FX29yaWcgICAKI2RlZmluZSBS
T1VUSU5FXzkgICAgIFJPVVRJTkVfb3JpZyAgIAojZGVmaW5lIFJPVVRJTkVfMTAgICAg
Uk9VVElORV9vcmlnICAgCiNkZWZpbmUgUk9VVElORV8xMSAgICBST1VUSU5FX29yaWcg
ICAKI2RlZmluZSBST1VUSU5FXzEyICAgIFJPVVRJTkVfb3JpZyAgIAojZGVmaW5lIFJP
VVRJTkVfMTMgICAgUk9VVElORV9vcmlnICAgCiNkZWZpbmUgUk9VVElORV8xNCAgICBS
T1VUSU5FX29yaWcgICAKI2RlZmluZSBST1VUSU5FXzE1ICAgIFJPVVRJTkVfb3JpZyAg
IAojZGVmaW5lIFJPVVRJTkVfMTYgICAgUk9VVElORV9vcmlnICAgCiNkZWZpbmUgUk9V
VElORV8xNyAgICBST1VUSU5FX29yaWcgICAKI2RlZmluZSBST1VUSU5FXzE4ICAgIFJP
VVRJTkVfb3JpZyAgIAojZGVmaW5lIFJPVVRJTkVfMTkgICAgUk9VVElORV9vcmlnICAg
CiNkZWZpbmUgUk9VVElORV8yMCAgICBST1VUSU5FX29yaWcgICAKI2RlZmluZSBST1VU
SU5FXzIxICAgIFJPVVRJTkVfb3JpZyAgIAojZGVmaW5lIFJPVVRJTkVfMjIgICAgUk9V
VElORV9vcmlnICAgCiNkZWZpbmUgUk9VVElORV8yMyAgICBST1VUSU5FX29yaWcgICAK
I2RlZmluZSBST1VUSU5FXzI0ICAgIFJPVVRJTkVfb3JpZyAgIAojZGVmaW5lIFJPVVRJ
TkVfMjUgICAgUk9VVElORV9vcmlnICAgCiNkZWZpbmUgUk9VVElORV8yNiAgICBST1VU
SU5FX29yaWcgICAKI2RlZmluZSBST1VUSU5FXzI3ICAgIFJPVVRJTkVfb3JpZyAgIAoK
I2RlZmluZSBUQ0YoTkFNRSxUTixJLE0pICAgICAgICAgICAgICBfU0VQXyhUTixNLGNm
Q09NTUEpIF8oVE4sX2NmVCkoTkFNRSxJLF8oQSxJKSxfKEIsSSksXyhDLEkpKQojZGVm
aW5lICAgICAgICAgICBCWVRFX2NmVChNLEksQSxCLEQpICpBCiNkZWZpbmUgICAgICAg
ICBET1VCTEVfY2ZUKE0sSSxBLEIsRCkgKkEKI2RlZmluZSAgICAgICAgICBGTE9BVF9j
ZlQoTSxJLEEsQixEKSAqQQojZGVmaW5lICAgICAgICAgICAgSU5UX2NmVChNLEksQSxC
LEQpICpBCiNkZWZpbmUgICAgICAgIExPR0lDQUxfY2ZUKE0sSSxBLEIsRCkgIEYyQ0xP
R0lDQUwoKkEpCiNkZWZpbmUgICAgICAgICAgIExPTkdfY2ZUKE0sSSxBLEIsRCkgKkEK
I2RlZmluZSAgICAgICAgICBTSE9SVF9jZlQoTSxJLEEsQixEKSAqQQojZGVmaW5lICAg
ICAgICAgIEJZVEVWX2NmVChNLEksQSxCLEQpICBBCiNkZWZpbmUgICAgICAgIERPVUJM
RVZfY2ZUKE0sSSxBLEIsRCkgIEEKI2RlZmluZSAgICAgICAgIEZMT0FUVl9jZlQoTSxJ
LEEsQixEKSAgVk9JRFAgQQojZGVmaW5lICAgICAgICAgICBJTlRWX2NmVChNLEksQSxC
LEQpICBBCiNkZWZpbmUgICAgICAgTE9HSUNBTFZfY2ZUKE0sSSxBLEIsRCkgIEEKI2Rl
ZmluZSAgICAgICAgICBMT05HVl9jZlQoTSxJLEEsQixEKSAgQQojZGVmaW5lICAgICAg
ICAgU0hPUlRWX2NmVChNLEksQSxCLEQpICBBCiNkZWZpbmUgICAgICAgICBCWVRFVlZf
Y2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQSAvKiBXZSBoYXZlIHRvIGNhc3QgdG8gdm9p
ZCAqLCovCiNkZWZpbmUgICAgICAgIEJZVEVWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lk
ICopQSAvKiBzaW5jZSB3ZSBkb24ndCBrbm93IHRoZSAgICovCiNkZWZpbmUgICAgICAg
QllURVZWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQSAvKiBkaW1lbnNpb25zIG9m
IHRoZSBhcnJheS4gICovCiNkZWZpbmUgICAgICBCWVRFVlZWVlZfY2ZUKE0sSSxBLEIs
RCkgICh2b2lkICopQSAvKiBpLmUuIFVuZm9ydHVuYXRlbHksIGNhbid0ICovCiNkZWZp
bmUgICAgIEJZVEVWVlZWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQSAvKiBjaGVj
ayB0aGF0IHRoZSB0eXBlICAgICAgICovCiNkZWZpbmUgICAgQllURVZWVlZWVlZfY2ZU
KE0sSSxBLEIsRCkgICh2b2lkICopQSAvKiBtYXRjaGVzIHRoZSBwcm90b3R5cGUuICAg
ICovCiNkZWZpbmUgICAgICAgRE9VQkxFVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICop
QQojZGVmaW5lICAgICAgRE9VQkxFVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEK
I2RlZmluZSAgICAgRE9VQkxFVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNk
ZWZpbmUgICAgRE9VQkxFVlZWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQQojZGVm
aW5lICAgRE9VQkxFVlZWVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEKI2RlZmlu
ZSAgRE9VQkxFVlZWVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNkZWZpbmUg
ICAgICAgIEZMT0FUVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQQojZGVmaW5lICAg
ICAgIEZMT0FUVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEKI2RlZmluZSAgICAg
IEZMT0FUVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNkZWZpbmUgICAgIEZM
T0FUVlZWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQQojZGVmaW5lICAgIEZMT0FU
VlZWVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEKI2RlZmluZSAgIEZMT0FUVlZW
VlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNkZWZpbmUgICAgICAgICAgSU5U
VlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQSAgCiNkZWZpbmUgICAgICAgICBJTlRW
VlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQSAgCiNkZWZpbmUgICAgICAgIElOVFZW
VlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQSAgCiNkZWZpbmUgICAgICAgSU5UVlZW
VlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQQojZGVmaW5lICAgICAgSU5UVlZWVlZW
X2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEKI2RlZmluZSAgICAgSU5UVlZWVlZWVl9j
ZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNkZWZpbmUgICAgICBMT0dJQ0FMVlZfY2ZU
KE0sSSxBLEIsRCkgICh2b2lkICopQQojZGVmaW5lICAgICBMT0dJQ0FMVlZWX2NmVChN
LEksQSxCLEQpICAodm9pZCAqKUEKI2RlZmluZSAgICBMT0dJQ0FMVlZWVl9jZlQoTSxJ
LEEsQixEKSAgKHZvaWQgKilBCiNkZWZpbmUgICBMT0dJQ0FMVlZWVlZfY2ZUKE0sSSxB
LEIsRCkgICh2b2lkICopQQojZGVmaW5lICBMT0dJQ0FMVlZWVlZWX2NmVChNLEksQSxC
LEQpICAodm9pZCAqKUEKI2RlZmluZSBMT0dJQ0FMVlZWVlZWVl9jZlQoTSxJLEEsQixE
KSAgKHZvaWQgKilBCiNkZWZpbmUgICAgICAgICBMT05HVlZfY2ZUKE0sSSxBLEIsRCkg
ICh2b2lkICopQQojZGVmaW5lICAgICAgICBMT05HVlZWX2NmVChNLEksQSxCLEQpICAo
dm9pZCAqKUEKI2RlZmluZSAgICAgICBMT05HVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZv
aWQgKilBCiNkZWZpbmUgICAgICBMT05HVlZWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lk
ICopQQojZGVmaW5lICAgICBMT05HVlZWVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAq
KUEKI2RlZmluZSAgICBMT05HVlZWVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilB
CiNkZWZpbmUgICAgICAgIFNIT1JUVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQQoj
ZGVmaW5lICAgICAgIFNIT1JUVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEKI2Rl
ZmluZSAgICAgIFNIT1JUVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNkZWZp
bmUgICAgIFNIT1JUVlZWVlZfY2ZUKE0sSSxBLEIsRCkgICh2b2lkICopQQojZGVmaW5l
ICAgIFNIT1JUVlZWVlZWX2NmVChNLEksQSxCLEQpICAodm9pZCAqKUEKI2RlZmluZSAg
IFNIT1JUVlZWVlZWVl9jZlQoTSxJLEEsQixEKSAgKHZvaWQgKilBCiNkZWZpbmUgICAg
ICAgICAgUEJZVEVfY2ZUKE0sSSxBLEIsRCkgIEEKI2RlZmluZSAgICAgICAgUERPVUJM
RV9jZlQoTSxJLEEsQixEKSAgQQojZGVmaW5lICAgICAgICAgUEZMT0FUX2NmVChNLEks
QSxCLEQpICBWT0lEUCBBCiNkZWZpbmUgICAgICAgICAgIFBJTlRfY2ZUKE0sSSxBLEIs
RCkgIEEKI2RlZmluZSAgICAgICBQTE9HSUNBTF9jZlQoTSxJLEEsQixEKSAgKCgqQT1G
MkNMT0dJQ0FMKCpBKSksQSkKI2RlZmluZSAgICAgICAgICBQTE9OR19jZlQoTSxJLEEs
QixEKSAgQQojZGVmaW5lICAgICAgICAgUFNIT1JUX2NmVChNLEksQSxCLEQpICBBCiNk
ZWZpbmUgICAgICAgICAgUFZPSURfY2ZUKE0sSSxBLEIsRCkgIEEKI2lmIGRlZmluZWQo
YXBvbGxvRm9ydHJhbikgfHwgZGVmaW5lZChocHV4Rm9ydHJhbjgwMCkgfHwgZGVmaW5l
ZChBYnNvZnRVTklYRm9ydHJhbikKI2RlZmluZSAgICAgICAgUk9VVElORV9jZlQoTSxJ
LEEsQixEKSAgXyhST1VUSU5FXyxJKSAgKCpBKQojZWxzZQojZGVmaW5lICAgICAgICBS
T1VUSU5FX2NmVChNLEksQSxCLEQpICBfKFJPVVRJTkVfLEkpICAgIEEKI2VuZGlmCi8q
IEEgPT0gcG9pbnRlciB0byB0aGUgY2hhcmFjdGVycwogICBEID09IGxlbmd0aCBvZiB0
aGUgc3RyaW5nLCBvciBvZiBhbiBlbGVtZW50IGluIGFuIGFycmF5IG9mIHN0cmluZ3MK
ICAgRSA9PSBudW1iZXIgb2YgZWxlbWVudHMgaW4gYW4gYXJyYXkgb2Ygc3RyaW5ncyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KI2RlZmluZSBUVFNUUiggICAgQSxC
LEQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFwKICAgICAgICAgICAoKEI9X2NmX21hbGxvYyhEKzEpKVtEXT0nXDAnLCBt
ZW1jcHkoQixBLEQpLCBraWxsX3RyYWlsaW5nKEIsJyAnKSkKI2RlZmluZSBUVFRUU1RS
KCAgQSxCLEQpICAgKCEoRDw0fHxBWzBdfHxBWzFdfHxBWzJdfHxBWzNdKSk/TlVMTDog
ICAgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lbWNocihB
LCdcMCcsRCkgICAgICAgICAgICAgICAgID9BICAgOiBUVFNUUihBLEIsRCkKI2RlZmlu
ZSBUVFRUU1RSViggQSxCLEQsRSkgKF8oQixOKT1FLEI9X2NmX21hbGxvYyhfKEIsTikq
KEQrMSkpLCAodm9pZCAqKSAgICAgIFwKICB2a2lsbF90cmFpbGluZyhmMmNzdHJ2KEEs
QixEKzEsIF8oQixOKSooRCsxKSksIEQrMSxfKEIsTikqKEQrMSksJyAnKSkKI2lmZGVm
IHZtc0ZvcnRyYW4KI2RlZmluZSAgICAgICAgIFNUUklOR19jZlQoTSxJLEEsQixEKSAg
VFRUVFNUUiggQS0+ZHNjJGFfcG9pbnRlcixCLEEtPmRzYyR3X2xlbmd0aCkKI2RlZmlu
ZSAgICAgICAgU1RSSU5HVl9jZlQoTSxJLEEsQixEKSAgVFRUVFNUUlYoQS0+ZHNjJGFf
cG9pbnRlciwgQiwgICAgICAgICAgIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQS0+ZHNjJHdfbGVuZ3RoICwgQS0+ZHNjJGxfbVswXSkK
I2RlZmluZSAgICAgICAgUFNUUklOR19jZlQoTSxJLEEsQixEKSAgICBUVFNUUiggQS0+
ZHNjJGFfcG9pbnRlcixCLEEtPmRzYyR3X2xlbmd0aCkKI2RlZmluZSAgICAgICBQUFNU
UklOR19jZlQoTSxJLEEsQixEKSAgICAgICAgICAgQS0+ZHNjJGFfcG9pbnRlcgojZWxz
ZQojaWZkZWYgQ1JBWUZvcnRyYW4KI2RlZmluZSAgICAgICAgIFNUUklOR19jZlQoTSxJ
LEEsQixEKSAgVFRUVFNUUiggX2ZjZHRvY3AoQSksQixfZmNkbGVuKEEpKQojZGVmaW5l
ICAgICAgICBTVFJJTkdWX2NmVChNLEksQSxCLEQpICBUVFRUU1RSVihfZmNkdG9jcChB
KSxCLF9mY2RsZW4oQSksICAgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBudW1fZWxlbShfZmNkdG9jcChBKSxfZmNkbGVuKEEpLF8zKE0sX1NUUlZfQSxJKSkp
CiNkZWZpbmUgICAgICAgIFBTVFJJTkdfY2ZUKE0sSSxBLEIsRCkgICAgVFRTVFIoIF9m
Y2R0b2NwKEEpLEIsX2ZjZGxlbihBKSkKI2RlZmluZSAgICAgICBQUFNUUklOR19jZlQo
TSxJLEEsQixEKSAgICAgICAgICAgX2ZjZHRvY3AoQSkKI2Vsc2UKI2RlZmluZSAgICAg
ICAgIFNUUklOR19jZlQoTSxJLEEsQixEKSAgVFRUVFNUUiggQSxCLEQpCiNkZWZpbmUg
ICAgICAgIFNUUklOR1ZfY2ZUKE0sSSxBLEIsRCkgIFRUVFRTVFJWKEEsQixELCBudW1f
ZWxlbShBLEQsXzMoTSxfU1RSVl9BLEkpKSkKI2RlZmluZSAgICAgICAgUFNUUklOR19j
ZlQoTSxJLEEsQixEKSAgICBUVFNUUiggQSxCLEQpCiNkZWZpbmUgICAgICAgUFBTVFJJ
TkdfY2ZUKE0sSSxBLEIsRCkgICAgICAgICAgIEEKI2VuZGlmCiNlbmRpZgojZGVmaW5l
ICAgICAgIFBOU1RSSU5HX2NmVChNLEksQSxCLEQpICAgIFNUUklOR19jZlQoTSxJLEEs
QixEKQojZGVmaW5lICAgICAgIFBTVFJJTkdWX2NmVChNLEksQSxCLEQpICAgU1RSSU5H
Vl9jZlQoTSxJLEEsQixEKQojZGVmaW5lICAgICAgICAgICBDRl8wX2NmVChNLEksQSxC
LEQpCgojZGVmaW5lIFJDRihUTixJKSAgICAgICAgICAgXyhUTixfY2ZTVFIpKDMsUixf
KEEsSSksXyhCLEkpLF8oQyxJKSwwLDApCiNkZWZpbmUgIERFRkFVTFRfY2ZSKEEsQixE
KQojZGVmaW5lICBMT0dJQ0FMX2NmUihBLEIsRCkKI2RlZmluZSBQTE9HSUNBTF9jZlIo
QSxCLEQpICpBPUMyRkxPR0lDQUwoKkEpOwojZGVmaW5lICAgU1RSSU5HX2NmUihBLEIs
RCkgaWYgKEIpIF9jZl9mcmVlKEIpOwojZGVmaW5lICBTVFJJTkdWX2NmUihBLEIsRCkg
X2NmX2ZyZWUoQik7Ci8qIEEgYW5kIEQgYXMgZGVmaW5lZCBhYm92ZSBmb3IgVFNUUklO
RyhWKSAqLwojZGVmaW5lIFJSUlJQU1RSKCBBLEIsRCkgICAgaWYgKEIpIG1lbWNweShB
LEIsIF9jZk1JTihzdHJsZW4oQiksRCkpLCAgICAgICAgICAgXAogICAgICAgICAgICAg
ICAgICAoRD5zdHJsZW4oQik/bWVtc2V0KEErc3RybGVuKEIpLCcgJywgRC1zdHJsZW4o
QikpOjApLCBfY2ZfZnJlZShCKTsKI2RlZmluZSBSUlJSUFNUUlYoQSxCLEQpICAgIGMy
ZnN0cnYoQixBLEQrMSwoRCsxKSpfKEIsTikpLCBfY2ZfZnJlZShCKTsKI2lmZGVmIHZt
c0ZvcnRyYW4KI2RlZmluZSAgUFNUUklOR19jZlIoQSxCLEQpIFJSUlJQU1RSKCBBLT5k
c2MkYV9wb2ludGVyLEIsQS0+ZHNjJHdfbGVuZ3RoKQojZGVmaW5lIFBTVFJJTkdWX2Nm
UihBLEIsRCkgUlJSUlBTVFJWKEEtPmRzYyRhX3BvaW50ZXIsQixBLT5kc2Mkd19sZW5n
dGgpCiNlbHNlCiNpZmRlZiBDUkFZRm9ydHJhbgojZGVmaW5lICBQU1RSSU5HX2NmUihB
LEIsRCkgUlJSUlBTVFIoIF9mY2R0b2NwKEEpLEIsX2ZjZGxlbihBKSkKI2RlZmluZSBQ
U1RSSU5HVl9jZlIoQSxCLEQpIFJSUlJQU1RSVihfZmNkdG9jcChBKSxCLF9mY2RsZW4o
QSkpCiNlbHNlCiNkZWZpbmUgIFBTVFJJTkdfY2ZSKEEsQixEKSBSUlJSUFNUUiggQSxC
LEQpCiNkZWZpbmUgUFNUUklOR1ZfY2ZSKEEsQixEKSBSUlJSUFNUUlYoQSxCLEQpCiNl
bmRpZgojZW5kaWYKI2RlZmluZSBQTlNUUklOR19jZlIoQSxCLEQpIFBTVFJJTkdfY2ZS
KEEsQixEKQojZGVmaW5lIFBQU1RSSU5HX2NmUihBLEIsRCkKCiNkZWZpbmUgICAgQllU
RV9jZkZaKFVOLExOKSBJTlRFR0VSX0JZVEUgICAgIEZDQUxMU0NfUVVBTElGSUVSIGZj
YWxsc2MoVU4sTE4pKAojZGVmaW5lICBET1VCTEVfY2ZGWihVTixMTikgRE9VQkxFX1BS
RUNJU0lPTiBGQ0FMTFNDX1FVQUxJRklFUiBmY2FsbHNjKFVOLExOKSgKI2RlZmluZSAg
ICAgSU5UX2NmRlooVU4sTE4pIGludCAgIEZDQUxMU0NfUVVBTElGSUVSIGZjYWxsc2Mo
VU4sTE4pKAojZGVmaW5lIExPR0lDQUxfY2ZGWihVTixMTikgaW50ICAgRkNBTExTQ19R
VUFMSUZJRVIgZmNhbGxzYyhVTixMTikoCiNkZWZpbmUgICAgTE9OR19jZkZaKFVOLExO
KSBsb25nICBGQ0FMTFNDX1FVQUxJRklFUiBmY2FsbHNjKFVOLExOKSgKI2RlZmluZSAg
IFNIT1JUX2NmRlooVU4sTE4pIHNob3J0IEZDQUxMU0NfUVVBTElGSUVSIGZjYWxsc2Mo
VU4sTE4pKAojZGVmaW5lICAgIFZPSURfY2ZGWihVTixMTikgdm9pZCAgRkNBTExTQ19R
VUFMSUZJRVIgZmNhbGxzYyhVTixMTikoCiNpZm5kZWYgX19DRl9fS25SCi8qIFRoZSB2
b2lkIGlzIHJlcSdkIGJ5IHRoZSBBcG9sbG8sIHRvIG1ha2UgdGhpcyBhbiBBTlNJIGZ1
bmN0aW9uIGRlY2xhcmF0aW9uLgogICBUaGUgQXBvbGxvIHByb21vdGVzIEsmUiBmbG9h
dCBmdW5jdGlvbnMgdG8gZG91YmxlLiAqLwojZGVmaW5lICAgRkxPQVRfY2ZGWihVTixM
TikgRk9SVFJBTl9SRUFMIEZDQUxMU0NfUVVBTElGSUVSIGZjYWxsc2MoVU4sTE4pKHZv
aWQKI2lmZGVmIHZtc0ZvcnRyYW4KI2RlZmluZSAgU1RSSU5HX2NmRlooVU4sTE4pIHZv
aWQgIEZDQUxMU0NfUVVBTElGSUVSIGZjYWxsc2MoVU4sTE4pKGZzdHJpbmcgKkFTCiNl
bHNlCiNpZmRlZiBDUkFZRm9ydHJhbgojZGVmaW5lICBTVFJJTkdfY2ZGWihVTixMTikg
dm9pZCAgRkNBTExTQ19RVUFMSUZJRVIgZmNhbGxzYyhVTixMTikoX2ZjZCAgICAgQVMK
I2Vsc2UKI2lmICBkZWZpbmVkKEFic29mdFVOSVhGb3J0cmFuKSAKI2RlZmluZSAgU1RS
SU5HX2NmRlooVU4sTE4pIHZvaWQgIEZDQUxMU0NfUVVBTElGSUVSIGZjYWxsc2MoVU4s
TE4pKGNoYXIgICAgKkFTCiNlbHNlCiNkZWZpbmUgIFNUUklOR19jZkZaKFVOLExOKSB2
b2lkICBGQ0FMTFNDX1FVQUxJRklFUiBmY2FsbHNjKFVOLExOKShjaGFyICAgICpBUywg
dW5zaWduZWQgRDAKI2VuZGlmCiNlbmRpZgojZW5kaWYKI2Vsc2UKI2lmICEgKGRlZmlu
ZWQoRkxPQVRGVU5DVElPTlRZUEUpJiZkZWZpbmVkKEFTU0lHTkZMT0FUKSYmZGVmaW5l
ZChSRVRVUk5GTE9BVCkpCiNkZWZpbmUgICBGTE9BVF9jZkZaKFVOLExOKSBGT1JUUkFO
X1JFQUwgICAgICBGQ0FMTFNDX1FVQUxJRklFUiBmY2FsbHNjKFVOLExOKSgKI2Vsc2UK
I2RlZmluZSAgIEZMT0FUX2NmRlooVU4sTE4pIEZMT0FURlVOQ1RJT05UWVBFIEZDQUxM
U0NfUVVBTElGSUVSIGZjYWxsc2MoVU4sTE4pKAojZW5kaWYKI2lmIGRlZmluZWQodm1z
Rm9ydHJhbikgfHwgZGVmaW5lZChDUkFZRm9ydHJhbikgfHwgZGVmaW5lZChBYnNvZnRV
TklYRm9ydHJhbikKI2RlZmluZSAgU1RSSU5HX2NmRlooVU4sTE4pIHZvaWQgIEZDQUxM
U0NfUVVBTElGSUVSIGZjYWxsc2MoVU4sTE4pKEFTCiNlbHNlCiNkZWZpbmUgIFNUUklO
R19jZkZaKFVOLExOKSB2b2lkICBGQ0FMTFNDX1FVQUxJRklFUiBmY2FsbHNjKFVOLExO
KShBUywgRDAKI2VuZGlmCiNlbmRpZgoKI2RlZmluZSAgICBCWVRFX2NmRihVTixMTikg
ICAgIEJZVEVfY2ZGWihVTixMTikKI2RlZmluZSAgRE9VQkxFX2NmRihVTixMTikgICBE
T1VCTEVfY2ZGWihVTixMTikKI2lmbmRlZiBfX0NGX0tuUgojZGVmaW5lICAgRkxPQVRf
Y2ZGKFVOLExOKSAgRk9SVFJBTl9SRUFMIEZDQUxMU0NfUVVBTElGSUVSIGZjYWxsc2Mo
VU4sTE4pKAojZWxzZQojZGVmaW5lICAgRkxPQVRfY2ZGKFVOLExOKSAgICBGTE9BVF9j
ZkZaKFVOLExOKQojZW5kaWYKI2RlZmluZSAgICAgSU5UX2NmRihVTixMTikgICAgICBJ
TlRfY2ZGWihVTixMTikKI2RlZmluZSBMT0dJQ0FMX2NmRihVTixMTikgIExPR0lDQUxf
Y2ZGWihVTixMTikKI2RlZmluZSAgICBMT05HX2NmRihVTixMTikgICAgIExPTkdfY2ZG
WihVTixMTikKI2RlZmluZSAgIFNIT1JUX2NmRihVTixMTikgICAgU0hPUlRfY2ZGWihV
TixMTikKI2RlZmluZSAgICBWT0lEX2NmRihVTixMTikgICAgIFZPSURfY2ZGWihVTixM
TikKI2RlZmluZSAgU1RSSU5HX2NmRihVTixMTikgICBTVFJJTkdfY2ZGWihVTixMTiks
CgojZGVmaW5lICAgICBJTlRfY2ZGRgojZGVmaW5lICAgIFZPSURfY2ZGRgojaWZkZWYg
dm1zRm9ydHJhbgojZGVmaW5lICBTVFJJTkdfY2ZGRiAgICAgICAgICAgZnN0cmluZyAq
QVM7IAojZWxzZQojaWZkZWYgQ1JBWUZvcnRyYW4KI2RlZmluZSAgU1RSSU5HX2NmRkYg
ICAgICAgICAgIF9mY2QgICAgIEFTOwojZWxzZQojZGVmaW5lICBTVFJJTkdfY2ZGRiAg
ICAgICAgICAgY2hhciAgICAqQVM7IHVuc2lnbmVkIEQwOwojZW5kaWYKI2VuZGlmCgoj
ZGVmaW5lICAgICBJTlRfY2ZMICAgICAgICAgICAgQTA9CiNkZWZpbmUgIFNUUklOR19j
ZkwgICAgICAgICAgICBBMD0KI2RlZmluZSAgICBWT0lEX2NmTCAgICAgICAgICAgICAg
ICAgICAgICAgIAoKI2RlZmluZSAgICBJTlRfY2ZLCiNkZWZpbmUgICBWT0lEX2NmSwov
KiBLU1RSSU5HIGNvcGllcyB0aGUgc3RyaW5nIGludG8gdGhlIHBvc2l0aW9uIHByb3Zp
ZGVkIGJ5IHRoZSBjYWxsZXIuICovCiNpZmRlZiB2bXNGb3J0cmFuCiNkZWZpbmUgU1RS
SU5HX2NmSyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiBtZW1jcHkoQVMtPmRzYyRhX3BvaW50ZXIsQTAsX2Nm
TUlOKEFTLT5kc2Mkd19sZW5ndGgsKEEwPT1OVUxMPzA6c3RybGVuKEEwKSkpKTtcCiBB
Uy0+ZHNjJHdfbGVuZ3RoPihBMD09TlVMTD8wOnN0cmxlbihBMCkpPyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgbWVtc2V0KEFTLT5kc2MkYV9wb2lu
dGVyKyhBMD09TlVMTD8wOnN0cmxlbihBMCkpLCcgJywgICAgICAgICAgICAgICAgICAg
ICAgICBcCiAgICAgICAgIEFTLT5kc2Mkd19sZW5ndGgtKEEwPT1OVUxMPzA6c3RybGVu
KEEwKSkpOjA7CiNlbHNlCiNpZmRlZiBDUkFZRm9ydHJhbgojZGVmaW5lIFNUUklOR19j
ZksgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAogbWVtY3B5KF9mY2R0b2NwKEFTKSxBMCwgX2NmTUlOKF9mY2Rs
ZW4oQVMpLChBMD09TlVMTD8wOnN0cmxlbihBMCkpKSApOyAgICAgICAgXAogX2ZjZGxl
bihBUyk+KEEwPT1OVUxMPzA6c3RybGVuKEEwKSk/ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgXAogIG1lbXNldChfZmNkdG9jcChBUykrKEEwPT1O
VUxMPzA6c3RybGVuKEEwKSksJyAnLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogICAgICAgICBfZmNkbGVuKEFTKS0oQTA9PU5VTEw/MDpzdHJsZW4oQTApKSk6MDsK
I2Vsc2UKI2RlZmluZSBTVFJJTkdfY2ZLICAgICAgICAgbWVtY3B5KEFTLEEwLCBfY2ZN
SU4oRDAsKEEwPT1OVUxMPzA6c3RybGVuKEEwKSkpICk7IFwKICAgICAgICAgICAgICAg
ICBEMD4oQTA9PU5VTEw/MDpzdHJsZW4oQTApKT9tZW1zZXQoQVMrKEEwPT1OVUxMPzA6
c3RybGVuKEEwKSksIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAnICcsIEQwLShBMD09TlVMTD8wOnN0cmxlbihBMCkpKTowOwojZW5kaWYK
I2VuZGlmCgovKiBOb3RlIHRoYXQgSy4uIGFuZCBJLi4gY2FuJ3QgYmUgY29tYmluZWQg
c2luY2UgSy4uIGhhcyB0byBhY2Nlc3MgZGF0YSBiZWZvcmUKUi4uLCBpbiBvcmRlciBm
b3IgZnVuY3Rpb25zIHJldHVybmluZyBzdHJpbmdzIHdoaWNoIGFyZSBhbHNvIHBhc3Nl
ZCBpbiBhcwphcmd1bWVudHMgdG8gd29yayBjb3JyZWN0bHkuIE5vdGUgdGhhdCBSLi4g
ZnJlZXMgYW5kIGhlbmNlIG1heSBjb3JydXB0IHRoZQpzdHJpbmcuICovCiNkZWZpbmUg
ICAgQllURV9jZkkgIHJldHVybiBBMDsKI2RlZmluZSAgRE9VQkxFX2NmSSAgcmV0dXJu
IEEwOwojaWYgISAoZGVmaW5lZChGTE9BVEZVTkNUSU9OVFlQRSkmJmRlZmluZWQoQVNT
SUdORkxPQVQpJiZkZWZpbmVkKFJFVFVSTkZMT0FUKSkKI2RlZmluZSAgIEZMT0FUX2Nm
SSAgcmV0dXJuIEEwOwojZWxzZQojZGVmaW5lICAgRkxPQVRfY2ZJICBSRVRVUk5GTE9B
VChBMCk7CiNlbmRpZgojZGVmaW5lICAgICBJTlRfY2ZJICByZXR1cm4gQTA7CiNpZmRl
ZiBocHV4Rm9ydHJhbjgwMAovKiBJbmNyZWRpYmx5LCBmdW5jdGlvbnMgbXVzdCByZXR1
cm4gdHJ1ZSBhcyAxLCBlbHNld2hlcmUgLnRydWUuPT0weDAxMDAwMDAwLiAqLwojZGVm
aW5lIExPR0lDQUxfY2ZJICByZXR1cm4gKChBMCk/MTowKTsKI2Vsc2UKI2RlZmluZSBM
T0dJQ0FMX2NmSSAgcmV0dXJuIEMyRkxPR0lDQUwoQTApOwojZW5kaWYKI2RlZmluZSAg
ICBMT05HX2NmSSAgcmV0dXJuIEEwOwojZGVmaW5lICAgU0hPUlRfY2ZJICByZXR1cm4g
QTA7CiNkZWZpbmUgIFNUUklOR19jZkkgIHJldHVybiAgIDsKI2RlZmluZSAgICBWT0lE
X2NmSSAgcmV0dXJuICAgOwoKI2lmZGVmIE9MRF9WQVhDICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIC8qIEFsbG93ICVDQy1JLVBBUkFNTk9UVVNFRC4gKi8KI3By
YWdtYSBzdGFuZGFyZAojZW5kaWYKCiNkZWZpbmUgRkNBTExTQ1NVQjAoIENOLFVOLExO
KSAgICAgICAgICAgICBGQ0FMTFNDRlVOMChWT0lELENOLFVOLExOKQojZGVmaW5lIEZD
QUxMU0NTVUIxKCBDTixVTixMTixUMSkgICAgICAgICAgRkNBTExTQ0ZVTjEoVk9JRCxD
TixVTixMTixUMSkKI2RlZmluZSBGQ0FMTFNDU1VCMiggQ04sVU4sTE4sVDEsVDIpICAg
ICAgIEZDQUxMU0NGVU4yKFZPSUQsQ04sVU4sTE4sVDEsVDIpCiNkZWZpbmUgRkNBTExT
Q1NVQjMoIENOLFVOLExOLFQxLFQyLFQzKSAgICBGQ0FMTFNDRlVOMyhWT0lELENOLFVO
LExOLFQxLFQyLFQzKQojZGVmaW5lIEZDQUxMU0NTVUI0KCBDTixVTixMTixUMSxUMixU
MyxUNCkgXAogICAgRkNBTExTQ0ZVTjQoVk9JRCxDTixVTixMTixUMSxUMixUMyxUNCkK
I2RlZmluZSBGQ0FMTFNDU1VCNSggQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUpIFwKICAg
IEZDQUxMU0NGVU41KFZPSUQsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUpCiNkZWZpbmUg
RkNBTExTQ1NVQjYoIENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2KSBcCiAgICBGQ0FM
TFNDRlVONihWT0lELENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2KSAgICAgICAKI2Rl
ZmluZSBGQ0FMTFNDU1VCNyggQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcpIFwK
ICAgIEZDQUxMU0NGVU43KFZPSUQsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcp
CiNkZWZpbmUgRkNBTExTQ1NVQjgoIENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LFQ4KSBcCiAgICBGQ0FMTFNDRlVOOChWT0lELENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1
LFQ2LFQ3LFQ4KQojZGVmaW5lIEZDQUxMU0NTVUI5KCBDTixVTixMTixUMSxUMixUMyxU
NCxUNSxUNixUNyxUOCxUOSkgXAogICAgRkNBTExTQ0ZVTjkoVk9JRCxDTixVTixMTixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSkKI2RlZmluZSBGQ0FMTFNDU1VCMTAoQ04s
VU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEpIFwKICAgRkNBTExTQ0ZV
TjEwKFZPSUQsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEpCiNk
ZWZpbmUgRkNBTExTQ1NVQjExKENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4
LFQ5LFRBLFRCKSBcCiAgIEZDQUxMU0NGVU4xMShWT0lELENOLFVOLExOLFQxLFQyLFQz
LFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCKQojZGVmaW5lIEZDQUxMU0NTVUIxMihDTixV
TixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQykgXAogICBGQ0FM
TFNDRlVOMTIoVk9JRCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQykKI2RlZmluZSBGQ0FMTFNDU1VCMTMoQ04sVU4sTE4sVDEsVDIsVDMsVDQs
VDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQpIFwKICAgRkNBTExTQ0ZVTjEzKFZPSUQs
Q04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQpCiNk
ZWZpbmUgRkNBTExTQ1NVQjE0KENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4
LFQ5LFRBLFRCLFRDLFRELFRFKSBcCiAgIEZDQUxMU0NGVU4xNChWT0lELENOLFVOLExO
LFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFKQojZGVmaW5l
IEZDQUxMU0NTVUIxNShDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSxURikgXAogICBGQ0FMTFNDRlVOMTUoVk9JRCxDTixVTixMTixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURikKI2RlZmlu
ZSBGQ0FMTFNDU1VCMTYoQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDks
VEEsVEIsVEMsVEQsVEUsVEYsVEcpIFwKICAgRkNBTExTQ0ZVTjE2KFZPSUQsQ04sVU4s
TE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcp
CiNkZWZpbmUgRkNBTExTQ1NVQjE3KENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3
LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRIKSBcCiAgIEZDQUxMU0NGVU4xNyhW
T0lELENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRE
LFRFLFRGLFRHLFRIKQojZGVmaW5lIEZDQUxMU0NTVUIxOChDTixVTixMTixUMSxUMixU
MyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSkgXAog
ICBGQ0FMTFNDRlVOMTgoVk9JRCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxU
OCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSkKI2RlZmluZSBGQ0FMTFNDU1VC
MTkoQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQs
VEUsVEYsVEcsVEgsVEksVEopIFwKICAgRkNBTExTQ0ZVTjE5KFZPSUQsQ04sVU4sTE4s
VDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgs
VEksVEopCiNkZWZpbmUgRkNBTExTQ1NVQjIwKENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1
LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLFRLKSBcCiAg
IEZDQUxMU0NGVU4yMChWT0lELENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4
LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRKLFRLKQojZGVmaW5lIEZDQUxM
U0NTVUIyMShDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixU
QyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCkgXAogICBGQ0FMTFNDRlVOMjEoVk9J
RCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxURixURyxUSCxUSSxUSixUSyxUTCkKI2RlZmluZSBGQ0FMTFNDU1VCMjIoQ04sVU4s
TE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcs
VEgsVEksVEosVEssVEwsVE0pIFwKICAgRkNBTExTQ0ZVTjIyKFZPSUQsQ04sVU4sTE4s
VDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgs
VEksVEosVEssVEwsVE0pCiNkZWZpbmUgRkNBTExTQ1NVQjIzKENOLFVOLExOLFQxLFQy
LFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRK
LFRLLFRMLFRNLFROKSBcCiAgIEZDQUxMU0NGVU4yMyhWT0lELENOLFVOLExOLFQxLFQy
LFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRGLFRHLFRILFRJLFRK
LFRLLFRMLFRNLFROKQojZGVmaW5lIEZDQUxMU0NTVUIyNChDTixVTixMTixUMSxUMixU
MyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixU
SyxUTCxUTSxUTixUTykgXAogICBGQ0FMTFNDRlVOMjQoVk9JRCxDTixVTixMTixUMSxU
MixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxU
SixUSyxUTCxUTSxUTixUTykKI2RlZmluZSBGQ0FMTFNDU1VCMjUoQ04sVU4sTE4sVDEs
VDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEks
VEosVEssVEwsVE0sVE4sVE8sVFApIFwKICAgRkNBTExTQ0ZVTjI1KFZPSUQsQ04sVU4s
TE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcs
VEgsVEksVEosVEssVEwsVE0sVE4sVE8sVFApCiNkZWZpbmUgRkNBTExTQ1NVQjI2KENO
LFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFLFRG
LFRHLFRILFRJLFRKLFRLLFRMLFRNLFROLFRPLFRQLFRRKSBcCiAgIEZDQUxMU0NGVU4y
NihWT0lELENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRD
LFRELFRFLFRGLFRHLFRILFRJLFRKLFRLLFRMLFRNLFROLFRPLFRQLFRRKQojZGVmaW5l
IEZDQUxMU0NTVUIyNyhDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTyxUUCxUUSxU
UikgXAogICBGQ0FMTFNDRlVOMjcoVk9JRCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxU
NixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxU
TixUTyxUUCxUUSxUUikKCgojZGVmaW5lIEZDQUxMU0NGVU4xKCBUMCxDTixVTixMTixU
MSkgXAogICAgICAgIEZDQUxMU0NGVU41IChUMCxDTixVTixMTixUMSxDRl8wLENGXzAs
Q0ZfMCxDRl8wKQojZGVmaW5lIEZDQUxMU0NGVU4yKCBUMCxDTixVTixMTixUMSxUMikg
XAogICAgICAgIEZDQUxMU0NGVU41IChUMCxDTixVTixMTixUMSxUMixDRl8wLENGXzAs
Q0ZfMCkKI2RlZmluZSBGQ0FMTFNDRlVOMyggVDAsQ04sVU4sTE4sVDEsVDIsVDMpIFwK
ICAgICAgICBGQ0FMTFNDRlVONSAoVDAsQ04sVU4sTE4sVDEsVDIsVDMsQ0ZfMCxDRl8w
KQojZGVmaW5lIEZDQUxMU0NGVU40KCBUMCxDTixVTixMTixUMSxUMixUMyxUNCkgXAog
ICAgICAgIEZDQUxMU0NGVU41IChUMCxDTixVTixMTixUMSxUMixUMyxUNCxDRl8wKQoj
ZGVmaW5lIEZDQUxMU0NGVU41KCBUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSkgXAog
ICAgICAgIEZDQUxMU0NGVU4xMChUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxDRl8w
LENGXzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgRkNBTExTQ0ZVTjYoIFQwLENOLFVO
LExOLFQxLFQyLFQzLFQ0LFQ1LFQ2KSBcCiAgICAgICAgRkNBTExTQ0ZVTjEwKFQwLENO
LFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LENGXzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZp
bmUgRkNBTExTQ0ZVTjcoIFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3KSBc
CiAgICAgICAgRkNBTExTQ0ZVTjEwKFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2
LFQ3LENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIEZDQUxMU0NGVU44KCBUMCxDTixVTixM
TixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCkgXAogICAgICAgIEZDQUxMU0NGVU4xMChU
MCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxDRl8wLENGXzApCiNkZWZp
bmUgRkNBTExTQ0ZVTjkoIFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4
LFQ5KSBcCiAgICAgICAgRkNBTExTQ0ZVTjEwKFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0
LFQ1LFQ2LFQ3LFQ4LFQ5LENGXzApCiNkZWZpbmUgRkNBTExTQ0ZVTjEwKFQwLENOLFVO
LExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBKSBcCiAgICAgICAgRkNBTExT
Q0ZVTjE0KFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLENG
XzAsQ0ZfMCxDRl8wLENGXzApCiNkZWZpbmUgRkNBTExTQ0ZVTjExKFQwLENOLFVOLExO
LFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCKSBcCiAgICAgICAgRkNBTExT
Q0ZVTjE0KFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRC
LENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIEZDQUxMU0NGVU4xMihUMCxDTixVTixMTixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQykgXAogICAgICAgIEZDQUxM
U0NGVU4xNChUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxU
QixUQyxDRl8wLENGXzApCiNkZWZpbmUgRkNBTExTQ0ZVTjEzKFQwLENOLFVOLExOLFQx
LFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFREKSBcCiAgICAgICAgRkNB
TExTQ0ZVTjE0KFQwLENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRB
LFRCLFRDLFRELENGXzApCgoKI2RlZmluZSBGQ0FMTFNDRlVOMTUoVDAsQ04sVU4sTE4s
VDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYpIFwKICAg
ICAgICBGQ0FMTFNDRlVOMjAoVDAsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcs
VDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wKQoj
ZGVmaW5lIEZDQUxMU0NGVU4xNihUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixU
NyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURykgXAogICAgICAgIEZDQUxMU0NGVU4y
MChUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxU
RCxURSxURixURyxDRl8wLENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIEZDQUxMU0NGVU4x
NyhUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxU
RCxURSxURixURyxUSCkgXAogICAgICAgIEZDQUxMU0NGVU4yMChUMCxDTixVTixMTixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxD
Rl8wLENGXzAsQ0ZfMCkKI2RlZmluZSBGQ0FMTFNDRlVOMTgoVDAsQ04sVU4sTE4sVDEs
VDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEkp
IFwKICAgICAgICBGQ0FMTFNDRlVOMjAoVDAsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUs
VDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksQ0ZfMCxDRl8wKQoj
ZGVmaW5lIEZDQUxMU0NGVU4xOShUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixU
NyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSikgXAogICAgICAgIEZD
QUxMU0NGVU4yMChUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixDRl8wKQojZGVmaW5lIEZDQUxMU0NG
VU4yMChUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixU
QyxURCxURSxURixURyxUSCxUSSxUSixUSykgXAogICAgICAgIEZDQUxMU0NGVU4yNyhU
MCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxURixURyxUSCxUSSxUSixUSyxDRl8wLENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxD
Rl8wKQojZGVmaW5lIEZDQUxMU0NGVU4yMShUMCxDTixVTixMTixUMSxUMixUMyxUNCxU
NSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCkg
XAogICAgICAgIEZDQUxMU0NGVU4yNyhUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxU
NixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxDRl8w
LENGXzAsQ0ZfMCxDRl8wLENGXzAsQ0ZfMCkKI2RlZmluZSBGQ0FMTFNDRlVOMjIoVDAs
Q04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUs
VEYsVEcsVEgsVEksVEosVEssVEwsVE0pIFwKICAgICAgICBGQ0FMTFNDRlVOMjcoVDAs
Q04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUs
VEYsVEcsVEgsVEksVEosVEssVEwsVE0sQ0ZfMCxDRl8wLENGXzAsQ0ZfMCxDRl8wKQoj
ZGVmaW5lIEZDQUxMU0NGVU4yMyhUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixU
NyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTikg
XAogICAgICAgIEZDQUxMU0NGVU4yNyhUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxU
NixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxU
TixDRl8wLENGXzAsQ0ZfMCxDRl8wKQojZGVmaW5lIEZDQUxMU0NGVU4yNChUMCxDTixV
TixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixU
RyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTykgXAogICAgICAgIEZDQUxMU0NGVU4yNyhU
MCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTyxDRl8wLENGXzAsQ0ZfMCkKI2Rl
ZmluZSBGQ0FMTFNDRlVOMjUoVDAsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUsVDYsVDcs
VDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEssVEwsVE0sVE4sVE8s
VFApIFwKICAgICAgICBGQ0FMTFNDRlVOMjcoVDAsQ04sVU4sTE4sVDEsVDIsVDMsVDQs
VDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEssVEws
VE0sVE4sVE8sVFAsQ0ZfMCxDRl8wKQojZGVmaW5lIEZDQUxMU0NGVU4yNihUMCxDTixV
TixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixU
RyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTyxUUCxUUSkgXAogICAgICAgIEZDQUxMU0NG
VU4yNyhUMCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixU
QyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTyxUUCxUUSxDRl8wKQoK
CiNpZm5kZWYgX19DRl9fS25SCiNkZWZpbmUgRkNBTExTQ0ZVTjAoVDAsQ04sVU4sTE4p
IENGZXh0ZXJuIF8oVDAsX2NmRlopKFVOLExOKSBBQlNPRlRfY2YyKFQwKSkgICBcCiAg
ICAgICAge19JY2YoMixVVSxUMCxBMCwwKTsgX0ljZigwLEwsVDAsMCwwKSBDTigpOyBf
SWNmKDAsSyxUMCwwLDApIF8oVDAsX2NmSSl9CgojZGVmaW5lIEZDQUxMU0NGVU4xNChU
MCxDTixVTixMTixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxU
RSkgICAgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDRmV4dGVybiBf
KFQwLF9jZkYpKFVOLExOKSAgICAgICAgICAgICAgICAgICAgXAogQ0ZBUkdUMTQoTkNG
LERDRixBQlNPRlRfY2YyKFQwKSxUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxU
QixUQyxURCxURSkgKSAgXAogeyAgICAgICAgICAgICAgICAgQ0ZBUkdUMTRTKFFDRixU
MSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSkgICAgXAogIF9J
Y2YoMixVVSxUMCxBMCwwKTsgX0ljZigwLEwsVDAsMCwwKSAgICAgIENOKCAgICBUQ0Yo
TE4sVDEsMSwwKSAgVENGKExOLFQyLDIsMSkgXAogICAgVENGKExOLFQzLDMsMSkgIFRD
RihMTixUNCw0LDEpIFRDRihMTixUNSw1LDEpICBUQ0YoTE4sVDYsNiwxKSAgVENGKExO
LFQ3LDcsMSkgXAogICAgVENGKExOLFQ4LDgsMSkgIFRDRihMTixUOSw5LDEpIFRDRihM
TixUQSwxMCwxKSBUQ0YoTE4sVEIsMTEsMSkgVENGKExOLFRDLDEyLDEpIFwKICAgIFRD
RihMTixURCwxMywxKSBUQ0YoTE4sVEUsMTQsMSkgKTsgICAgICAgICAgICAgICAgICAg
ICAgICAgIF9JY2YoMCxLLFQwLDAsMCkgXAogICAgICAgICAgICAgICAgICAgQ0ZBUkdU
MTRTKFJDRixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSkg
IF8oVDAsX2NmSSkgfQoKI2RlZmluZSBGQ0FMTFNDRlVOMjcoVDAsQ04sVU4sTE4sVDEs
VDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEks
VEosVEssVEwsVE0sVE4sVE8sVFAsVFEsVFIpICAgXAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBDRmV4dGVybiBfKFQwLF9jZkYpKFVOLExOKSAgICAgICAgICAg
ICAgICAgICAgXAogQ0ZBUkdUMjcoTkNGLERDRixBQlNPRlRfY2YyKFQwKSxUMSxUMixU
MyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixU
SyxUTCxUTSxUTixUTyxUUCxUUSxUUikgKSBcCiB7ICAgICAgICAgICAgICAgICBDRkFS
R1QyN1MoUUNGLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRF
LFRGLFRHLFRILFRJLFRKLFRLLFRMLFRNLFROLFRPLFRQLFRRLFRSKSAgIFwKICBfSWNm
KDIsVVUsVDAsQTAsMCk7IF9JY2YoMCxMLFQwLDAsMCkgICAgICBDTiggICAgIFRDRihM
TixUMSwxLDApICBUQ0YoTE4sVDIsMiwxKSAgXAogICAgVENGKExOLFQzLDMsMSkgIFRD
RihMTixUNCw0LDEpICBUQ0YoTE4sVDUsNSwxKSAgVENGKExOLFQ2LDYsMSkgIFRDRihM
TixUNyw3LDEpICBcCiAgICBUQ0YoTE4sVDgsOCwxKSAgVENGKExOLFQ5LDksMSkgIFRD
RihMTixUQSwxMCwxKSBUQ0YoTE4sVEIsMTEsMSkgVENGKExOLFRDLDEyLDEpIFwKICAg
IFRDRihMTixURCwxMywxKSBUQ0YoTE4sVEUsMTQsMSkgVENGKExOLFRGLDE1LDEpIFRD
RihMTixURywxNiwxKSBUQ0YoTE4sVEgsMTcsMSkgXAogICAgVENGKExOLFRJLDE4LDEp
IFRDRihMTixUSiwxOSwxKSBUQ0YoTE4sVEssMjAsMSkgVENGKExOLFRMLDIxLDEpIFRD
RihMTixUTSwyMiwxKSBcCiAgICBUQ0YoTE4sVE4sMjMsMSkgVENGKExOLFRPLDI0LDEp
IFRDRihMTixUUCwyNSwxKSBUQ0YoTE4sVFEsMjYsMSkgVENGKExOLFRSLDI3LDEpICk7
IF9JY2YoMCxLLFQwLDAsMCkgXAogICAgICAgICAgICAgICAgICAgQ0ZBUkdUMjdTKFJD
RixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxU
SCxUSSxUSixUSyxUTCxUTSxUTixUTyxUUCxUUSxUUikgIF8oVDAsX2NmSSkgfQoKI2Vs
c2UKI2RlZmluZSBGQ0FMTFNDRlVOMChUMCxDTixVTixMTikgQ0ZleHRlcm4gXyhUMCxf
Y2ZGWikoVU4sTE4pIEFCU09GVF9jZjMoVDApKSBfSWNmKDAsRkYsVDAsMCwwKVwKICAg
ICAgICB7X0ljZigyLFVVLFQwLEEwLDApOyBfSWNmKDAsTCxUMCwwLDApIENOKCk7IF9J
Y2YoMCxLLFQwLDAsMCkgXyhUMCxfY2ZJKX0KCiNkZWZpbmUgRkNBTExTQ0ZVTjE0KFQw
LENOLFVOLExOLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRF
KSAgICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENGZXh0ZXJuIF8o
VDAsX2NmRikoVU4sTE4pICAgICAgICAgICAgICAgICAgICBcCiBDRkFSR1QxNChOTkNG
LEREQ0YsQUJTT0ZUX2NmMyhUMCksVDEsVDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEs
VEIsVEMsVEQsVEUpKSBfSWNmKDAsRkYsVDAsMCwwKSBcCiAgICAgICBDRkFSR1QxNEZT
KE5OTkNGLERERENGLF9aLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRD
LFRELFRFKTsgICBcCiB7ICAgICAgICAgICAgICAgICBDRkFSR1QxNFMoUUNGLFQxLFQy
LFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRDLFRELFRFKSAgICBcCiAgX0ljZigy
LFVVLFQwLEEwLDApOyBfSWNmKDAsTCxUMCwwLDApICAgICAgQ04oICBUQ0YoTE4sVDEs
MSwwKSBUQ0YoTE4sVDIsMiwxKSBcCiAgICBUQ0YoTE4sVDMsMywxKSBUQ0YoTE4sVDQs
NCwxKSBUQ0YoTE4sVDUsNSwxKSBUQ0YoTE4sVDYsNiwxKSBUQ0YoTE4sVDcsNywxKSBc
CiAgICBUQ0YoTE4sVDgsOCwxKSBUQ0YoTE4sVDksOSwxKSBUQ0YoTE4sVEEsMTAsMSkg
VENGKExOLFRCLDExLDEpIFRDRihMTixUQywxMiwxKSBcCiAgICBUQ0YoTE4sVEQsMTMs
MSkgVENGKExOLFRFLDE0LDEpICk7ICAgICAgICAgICAgICAgICAgICAgICAgICBfSWNm
KDAsSyxUMCwwLDApIFwKICAgICAgICAgICAgICAgICAgIENGQVJHVDE0UyhSQ0YsVDEs
VDIsVDMsVDQsVDUsVDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUpICBfKFQwLF9jZkkp
fQoKI2RlZmluZSBGQ0FMTFNDRlVOMjcoVDAsQ04sVU4sTE4sVDEsVDIsVDMsVDQsVDUs
VDYsVDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEssVEwsVE0s
VE4sVE8sVFAsVFEsVFIpICBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IENGZXh0ZXJuIF8oVDAsX2NmRikoVU4sTE4pICAgICAgICAgICAgICAgICAgICBcCiBD
RkFSR1QyNyhOTkNGLEREQ0YsQUJTT0ZUX2NmMyhUMCksVDEsVDIsVDMsVDQsVDUsVDYs
VDcsVDgsVDksVEEsVEIsVEMsVEQsVEUsVEYsVEcsVEgsVEksVEosVEssVEwsVE0sVE4s
VE8sVFAsVFEsVFIpKSBfSWNmKDAsRkYsVDAsMCwwKSBcCiAgICAgICBDRkFSR1QyN0ZT
KE5OTkNGLERERENGLF9aLFQxLFQyLFQzLFQ0LFQ1LFQ2LFQ3LFQ4LFQ5LFRBLFRCLFRD
LFRELFRFLFRGLFRHLFRILFRJLFRKLFRLLFRMLFRNLFROLFRPLFRQLFRRLFRSKTsgXAog
eyAgICAgICAgICAgICAgICAgQ0ZBUkdUMjdTKFFDRixUMSxUMixUMyxUNCxUNSxUNixU
NyxUOCxUOSxUQSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTixU
TyxUUCxUUSxUUikgIFwKICBfSWNmKDIsVVUsVDAsQTAsMCk7IF9JY2YoMCxMLFQwLDAs
MCkgICAgICBDTiggICAgIFRDRihMTixUMSwxLDApICBUQ0YoTE4sVDIsMiwxKSAgXAog
ICAgVENGKExOLFQzLDMsMSkgIFRDRihMTixUNCw0LDEpICBUQ0YoTE4sVDUsNSwxKSAg
VENGKExOLFQ2LDYsMSkgIFRDRihMTixUNyw3LDEpICBcCiAgICBUQ0YoTE4sVDgsOCwx
KSAgVENGKExOLFQ5LDksMSkgIFRDRihMTixUQSwxMCwxKSBUQ0YoTE4sVEIsMTEsMSkg
VENGKExOLFRDLDEyLDEpIFwKICAgIFRDRihMTixURCwxMywxKSBUQ0YoTE4sVEUsMTQs
MSkgVENGKExOLFRGLDE1LDEpIFRDRihMTixURywxNiwxKSBUQ0YoTE4sVEgsMTcsMSkg
XAogICAgVENGKExOLFRJLDE4LDEpIFRDRihMTixUSiwxOSwxKSBUQ0YoTE4sVEssMjAs
MSkgVENGKExOLFRMLDIxLDEpIFRDRihMTixUTSwyMiwxKSBcCiAgICBUQ0YoTE4sVE4s
MjMsMSkgVENGKExOLFRPLDI0LDEpIFRDRihMTixUUCwyNSwxKSBUQ0YoTE4sVFEsMjYs
MSkgVENGKExOLFRSLDI3LDEpICk7IF9JY2YoMCxLLFQwLDAsMCkgXAogICAgICAgICAg
ICAgICAgICAgQ0ZBUkdUMjdTKFJDRixUMSxUMixUMyxUNCxUNSxUNixUNyxUOCxUOSxU
QSxUQixUQyxURCxURSxURixURyxUSCxUSSxUSixUSyxUTCxUTSxUTixUTyxUUCxUUSxU
UikgIF8oVDAsX2NmSSl9CgojZW5kaWYKCgojZW5kaWYJIC8qIF9fQ0ZPUlRSQU5fTE9B
REVEICovCg=

  • 2005 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: