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: