This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
c/404: Inconsistan behaviour in expression eval between intel and alpha
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c/404: Inconsistan behaviour in expression eval between intel and alpha
- From: michael at fastmail dot ca
- Date: 12 Jul 2000 02:17:50 -0000
- Reply-To: michael at fastmail dot ca
- Resent-Cc: gcc-prs at gcc dot gnu dot org
- Resent-Reply-To: gcc-gnats@gcc.gnu.org, michael@fastmail.ca
>Number: 404
>Category: c
>Synopsis: Inconsistan behaviour in expression eval between intel and alpha
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: wrong-code
>Submitter-Id: net
>Arrival-Date: Tue Jul 11 19:26:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator: michael@fastmail.ca
>Release: gcc version 2.95.2 19991024 (release)
>Organization:
>Environment:
>Description:
The following code snippet executes on the intel differently than the alpha
while (*tmptag)
*(tmptag++)=toupper(*tmptag);
The alpha increments tmptag and then performs the assignment.
Here is the output of the included test case:
Intel:
tag is (Test String)
tag is (TEST STRING)
Alpha:
tag is (Test String)
tag is (EST STRING)
>How-To-Repeat:
compile and run test.c on intel and alpha. Same code yeilds different results.
Compilation done with:
gcc test.c
in both cases.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="gcc-bug-testcases.tgz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="gcc-bug-testcases.tgz"
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
LXHVcMKILb6rik8qvVJFVVQ5rXKh+cxscqRNosT1bOpF7IPr3ujN8rfpEp7PJhYbokm/4QmI7Av8
tE3Zp7lW3OKmH7I9XucYZyEdcYHiEvvMvagr+IHgKkFUVAQCt4QXXsRcCJgL7ESDZjGkH67Wj/nN
V1sFlM7SO6LeA+VfhSBmRXnGs85A5izHnclc7thXJXcdHyXDa9xpaT5rpTWSqmA2fjIU2+uCLBG/
RRg7x+V5wuScn1eEtSSI8DozXXgdV5Mmqgly+U9ef6nM0SqbVSne/+JIpgquRQQzi7swWTCn/cdK
p4tnUZNRPGX9R46QScD03uwz6RrJ1/UWcxetqHZSwG1SoFlZTjhTIjENA3TBGP30/v0NWD/94982
uNPr86kLzvX1tTNzF2BlFEXn1B4NzcwAAwwwwAADDDDAAAMMMMAAAwwwwAADDDDAAAMMMMAAAwww
wAADDDDAAF34HxxNRPAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAA=