It is said that if you give an infinite number of cows an infinite number of heavy-duty laptops (with very large keys), that they will ultimately produce all the world's great palindromes. Your job will be to detect these bovine beauties.
Ignore punctuation, whitespace, numbers, and case when testing for palindromes, but keep these extra characters around so that you can print them out as the answer; just consider the letters `A-Z' and `a-z'.
Find the largest palindrome in a string no more than 20,000 characters long. The largest palindrome is guaranteed to be at most 2,000 characters long before whitespace and punctuation are removed.
A file with no more than 20,000 characters. The file has one or more lines which, when taken together, represent one long string. No line is longer than 80 characters (not counting the newline at the end).
Confucius say: Madam, I'm Adam.
The first line of the output should be the length of the longest palindrome found. The next line or lines should be the actual text of the palindrome (without any surrounding white space or punctuation but with all other characters) printed on a line (or more than one line if newlines are included in the palindromic text). If there are multiple palindromes of longest length, output the one that appears first.
11 Madam, I'm Adam
题解:先将原文读入包括回车换行,然后暴搜,两种情况:1:回文长度为奇数个,2:回文长度为偶数个,
左右同时找到下一个字母,判断回文,用length记录长度,l 记录左点 r 记录右点,a记录回文最左点与非回文做点第一个的距离
b记录回文最右点与右非回文第一点的距离。start记录回文最左点,end记录回文最右点。
EX:q23w123et345t4e4w44k3542
l=0; r=20 a=2 b=2
start=l+a+1=3
end=r-b-1=17
length=6
/*
ID:nealgav1
PROG:calfflac
LANG:C++
*/
#include
#include
#include
#define N 21111
using namespace std;
int ex[N];
char line[N];
int ans;
void cre()
{
int j,i;
memset(ex,0,sizeof(ex));
for(i='A',j=1;i<='Z';i++,j++)
ex[i]=j;
for(i='a',j=1;i<='z';i++,j++)
ex[i]=j;
}
void hui(int len)
{
int start,end;
int length=0;
int l,r,j;
int a,b;
for(int i=0;i=0&&i+r=0&&!ex[line[i-l-1]])
{
l++;a++;
}
while(i+r+1length)
{
length=j;
start=i-l+a;
end=i+r-b;
}
j=0;
l=0;
r=1;
while(i+r=0&&i+r=0&&!ex[line[i-l-1]])
{
l++;a++;
}
while(i+r+1length)
{
length=j;
start=i-l+a;
end=i+r-b;
}
}
}
printf("%d\n",length);
for(int k=start;k<=end;k++)
printf("%c",line[k]);
printf("\n");
}
int main()
{
FILE *fin=fopen("calfflac.in","r");
freopen("calfflac.out","w",stdout);
char f[N];
int i=0;
int len;
while((line[i++]=fgetc(fin))!=EOF);
len=i;
cre();
hui(len);
}
To make the programming easier, we keep two copies of the text: the original, and one with the punctuation stripped out. We find the biggest palindrome in the latter copy, and then figure out which part of the original it corresponds to.
To find the biggest palindrome in the alphabetic text, we look, for each letter in the text, at the biggest palindrome centered on that letter (in the case of an odd length palindrome) or just to the right of that letter (in the case of an even length palindrome).
There are 20,000 letters, and we are assured that no palindrome is more than 2,000 letters long, and we search for both even and odd palindromes, for a total of about 20,000*2,000*2 = 80,000,000 operations, which is perfectly reasonable within the time limit.
#include#include #include #include #include char fulltext[21000]; char text[21000]; char *pal; int pallen; void findpal(void) { char *p, *fwd, *bkwd, *etext; int len; etext = text+strlen(text); for(p=text; *p; p++) { /* try palindrome with *p as center character */ for(fwd=bkwd=p; bkwd >= text && fwd < etext && *fwd == *bkwd; fwd++, bkwd--) ; bkwd++; len = fwd - bkwd; if(len > pallen) { pal = bkwd; pallen = len; } /* try palindrome with *p as left middle character */ for(bkwd=p, fwd=p+1; bkwd >= text && fwd < etext && *fwd == *bkwd; fwd++, bkwd--) ; bkwd++; len = fwd - bkwd; if(len > pallen) { pal = bkwd; pallen = len; } } } void main(void) { FILE *fin, *fout; char *p, *q; int c, i, n; fin = fopen("calfflac.in", "r"); fout = fopen("calfflac.out", "w"); assert(fin != NULL && fout != NULL); /* fill fulltext with input, text with just the letters */ p=fulltext; q=text; while((c = getc(fin)) != EOF) { if(isalpha(c)) *q++ = tolower(c); *p++ = c; } *p = '\0'; *q = '\0'; findpal(); fprintf(fout, "%d\n", pallen); /* find the string we found in the original text by finding the nth character */ n = pal - text; for(i=0, p=fulltext; *p; p++) if(isalpha(*p)) if(i++ == n) break; assert(*p != '\0'); /* print out the next pallen characters */ for(i=0; i
USER: Neal Gavin Gavin [nealgav1] TASK: calfflac LANG: C++ Compiling... Compile: OK Executing... Test 1: TEST OK [0.000 secs, 3444 KB] Test 2: TEST OK [0.000 secs, 3444 KB] Test 3: TEST OK [0.000 secs, 3444 KB] Test 4: TEST OK [0.000 secs, 3444 KB] Test 5: TEST OK [0.000 secs, 3444 KB] Test 6: TEST OK [0.000 secs, 3444 KB] Test 7: TEST OK [0.000 secs, 3444 KB] Test 8: TEST OK [0.097 secs, 3444 KB] All tests OK.Your program ('calfflac') produced all correct answers! This is your submission #3 for this problem. Congratulations!
Here are the test data inputs:
------- test 1 ---- Confucius say: Madam, I'm Adam. ------- test 2 ---- LupgTU{YtMzkojlNfWiuRXReZYzcoOwuGuqo{WEzQZe[LqoHxgNsDdoixRIReZplGXKgcSJthF[gcWkC WinQvfIIgcikm[lk[kFB ------- test 3 ---- /* ID: jweisbl1 LANG: JAVA PROG: calfflac */ import java.io.*; import java.util.*; public class calfflac { private int money=0; private String name=""; public static void main(String[] args) throws Exception { FileOutputStream out; // declare a file output object PrintStream p; // declare a print stream object out = new FileOutputStream("calfflac.out"); // Connect print stream to the output stream p = new PrintStream( out ); Scanner in=new Scanner(new BufferedReader(new FileReader("calfflac.in"))); StringBuffer str=new StringBuffer(in.nextLine()); while(in.hasNextLine()) str.append("\n"+in.nextLine()); String maxPal=""; ///////////////////////////////////////////////////////////////////////////////////////////////////////////// char[] letters=new char[str.length()]; int size=0,indices[]=new int[str.length()]; for(int i=0;iKeep up the good work!=0 && center+diff+add maxLength) { maxLength=2*diff+add+1; maxCenter=center;maxDiff=diff;maxAdd=add; if(indices[center+diff+add]==str.length()-1) maxPal=str.substring(indices[center-diff]); else maxPal=str.substring(indices[center-diff],indices[center+diff+add]+1); }//if }//even/odd } //center //for(int g=0;g #include #include FILE *fout, *fin; typedef short term_set[100][3]; int terms[201][201]; term_set term1; /* coeff, xpow, ypow */ term_set term2; /* coeff, xpow, ypow */ char output[2][5000]; int opos; int read_term(term_set *term) { char str[100]; int state; /* 0 => coeff, 1 => xpow, 2 => ypow */ int sign, val; int n, pos; if (fscanf (fin, "%s", str) != 1) return -1; state = 0; sign = 1; val = 0; n = 0; pos = 0; for (pos = 0; str[pos]; pos++) { switch (str[pos]) { case 'x': if (val == 0) val++; (*term)[n][state] = val *sign; state = 1; sign = 1; val = 0; break; case 'y': if (val == 0) val++; (*term)[n][state] = val*sign; state = 2; sign = 1; val = 0; break; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': val = 10*val + str[pos] - '0'; break; case '-': if (val != 0 || state != 0) { if (val == 0) val++; (*term)[n][state] = val*sign; } else n--; sign = -1; val = 0; state = 0; n++; break; case '+': if (val == 0) val++; (*term)[n][state] = val*sign; sign = 1; val = 0; state = 0; n++; break; } } if (val == 0) val++; (*term)[n][state] = val*sign; n++; return n; } void finish_strings(void) { int lv; for (lv = opos; output[0][lv-1] == ' ' && lv > 0; lv--); output[0][lv] = '\0'; for (lv = opos; output[1][lv-1] == ' ' && lv > 0; lv--); output[1][lv] = '\0'; } void add_int(int num, int str) { int len; sprintf (output[str]+opos, "%i", num); len = strlen(output[str]+opos); for (; len > 0; len--) output[1-str][opos++] = ' '; } void add_char(char ch, int str) { output[str][opos] = ch; output[1-str][opos++] = ' '; } int main(int argc, char **argv) { char string[100]; int nterm1, nterm2; int state; int lv, lv2; if (argc == 1) { if ((fin = fopen("poly1.in", "r")) == NULL) { perror ("fopen fin"); exit(1); } if ((fout = fopen("poly1.out", "w")) == NULL) { perror ("fopen fout"); exit(1); } } else { if ((fin = fopen(argv[1], "r")) == NULL) { perror ("fopen fin filename"); exit(1); } fout = stdout; } while (1) { nterm1 = read_term(&term1); if (nterm1 < 0) break; nterm2 = read_term(&term2); memset(terms, 0, sizeof(terms)); for (lv = 0; lv < nterm1; lv++) for (lv2 = 0; lv2 < nterm2; lv2++) { terms[term1[lv][1]+term2[lv2][1]][term1[lv][2]+term2[lv2][2]] += term1[lv][0] * (int)term2[lv2][0]; } state = 0; for (lv = 200; lv >= 0; lv--) { for (lv2 = 0; lv2 <= 200; lv2++) { if (terms[lv][lv2] != 0) { if (state == 1) { add_char(' ', 0); if (terms[lv][lv2] < 0) add_char('-', 1); else add_char('+', 1); add_char(' ', 0); } else { if (terms[lv][lv2] < 0) add_char('-', 1); state = 1; } if (abs(terms[lv][lv2]) != 1 || (lv == 0 && lv2 == 0)) add_int(abs(terms[lv][lv2]), 1); if (lv != 0) { add_char('x', 1); if (lv != 1) add_int(lv, 0); } if (lv2 != 0) { add_char('y', 1); if (lv2 != 1) add_int(lv2, 0); } } } } finish_strings(); fprintf (fout, "%s\n", output[0]); fprintf (fout, "%s\n", output[1]); opos = 0; } } ------- test 6 ---- HMOLntTeEvwoYrYqswpfGDtFFxkbJjPkzLLOMpWbUbhJTvpOKBOLFfsbboEWOeVqRyfegLnJNVTmHiHE pBjDNNZnscYpDevgiClFSWmcpnqQZC{coYhUUoXiSxw[fnILqTlvcJYKlxT[wb{YUmdiPchBRyTGjrRx foPklPWjnvCtfTYgYjPOeRSlejfqlfyLDHNQxQfsgoctMugexzFzUPoGHdWtrRQffvRkIIEpHsmkXzuZ GHNGOQbcVkEjsnlKFMGMflfNFgPkXsiysDBrpLNUTzooerIXXYNcquksNKZkeopkjJvvXmcIUOPWydtz tWSYgvmwuyH{cROwXUJD[w[R[cikeEQyR[jnzUzSZduPNosodiPUcmwYv[NMGCLGdZHfEJtUHCHtNKKl cebqXEEdrDSlQBjmVSx[fjbSPpQktgWMgmkWoWpgHJUdcP[oCijZGLHXmlXTwWg{iTJNMJphKhFFFuKT {iDXsiLHfblJfBVFecGVdEqHxdmYNer[t[ZvWpJfdNseiLosLeMlXtULELH[vnuoWnRQvTfm[fjwomNl RrtVOCrBjXJVbCfXJdTpMzEsEdHhdwVdgEDFiqcwWqVKfFybmBvdInzNgxzymbjLfIqCCgVuVBXwBryd mcvZqwXLgllkDUBchofXQfJDBruXBwMN{tNziNTFDFwSRxlukPCxr{{d{YIRd{Vxg{YRGxUGgOtLqiep Oqk[WTViDOYqJybW{{RxVBpRdMcnzXVNdDMgqwpVqQicMeQBdMDVYwCDWjvjiODqsUTNedyXzYp[SUcB KoitJrb[SsDDFqE[KQoCEcfEZdnW{y[sl[qUVYwWWvC{BfVjdDLmqeKgxOR[ls{kkVhZqJCFPwGYZUpC PSDTtRQrnKiiwffICppwi[IBenSsVWcscInXPSORdCWGpPfunXEUrpevH{ptisotM[KHFeZpUiTKiMnW UmPDncEREEYwq{M{rjeZRBQQPpiRTzLkJgcBeLsnvsnzYjVkJoTCqroofLmwhsweQpGFEDYbvuVquDhU xe{yEvQeGqndlVLoWK{zHEoGEVZvBcDThtKJkNTRmmhvWTlWOXgNRnrfOOxDEPhGzriUdHjVcSQPqJOr sRlypGqUjPgTiRqiOGhMHTsny{FyShWoLIVmkwqCkRT{dSthXVhSKRWoutSWxRRULFVhKfQlvvVGDIth quIOXxkwKqGwrceNudGsIPvv{ifOHgYDzswhXUFvzkGzmxW[EZ{C[nkjKLpCOjxez[gtxkNOKMjYlfoi kKiviKWqxdP[gGmGUksFIunjmNkYrkRxfLMXEXbypLwpMpnMSolWBexmMlFUwtt{box[cYfLGyTC[XZD Jl{dn[kIeByKxPCvhpPhstqRHpUBEngpntWcGPvoxE{hTJBmbODjJdDErQMvqDBdSYfDeqUf[cQqZVHB OTEg[NPEl{Cgi[ZmxfzIGSMIbxwddqbNGybdBzqJmtIkWKBuNkxSHKWnxpZOXRuccTyw{BxCRYnljgmi tLkwLdi[UoJQ[tdXbnoUDfbJCbVBMFuKJGDtVQBqVLhKEIQTNTwVimkkRUgqSioFYQiLWywjdjHSWf{J GRjdxJJeuTlykoMGVfxHILGB[yEqyv{[xXmNSKmvEwotOUOiyeIDoXXKkGPimQVKCbeJpqWlEDoVmyjx VU{Ri{fkzbWlhMqzGkWuGhEtCPPEIJziBJrZwHWCSvOBosRQRmbEqwKjmHbUrbMxnKUkyvbjHmwwRtLE ZLBBZGZnDMdLcwTKNiomDnFgXFXTTkObnoQOpU[[qvUkCWNQeBCMpKeKnfSSIJKuCgJTxLLTYDLIIMqE zubEPXJwMVuoTrFyEkEBDrnRmvnfImqPBxNYV{BgBQISqbNZNTUOewdqbq{YLWMLrxtYX[VCVF{kziZJ vZPkrlzHenNoBVnpiVkIOlEgDMP[TpynrClZclBoIRXLLveOOUZXcgWeSZmEKfEHHpsGsVERUjzcjuXe [JELziEXncqSjlLjHcgerHjRHGWvjKUEkJruybDclgFKFHmYpluMgyERIuw{xzQeEKTPhgMXSFuOkYkF PlJGl[HPNmXvMGtjYoSwEyrjEitgv[vUbXBtNpCgQgrnwZUH{mxfVMPbfNRhlcxYnxosudvMJVxlglwz SrwMMyrGhzckWKcZEXypxQVnvFVEIixCX[He[QowofoZxEmsDcgmy{ETWzGfcVnWEzdoLMjfco[k{pqC IbKLCj[pqJVQvhpDiGSMMeIMWMlkGPYqUwlEchBGLMTBMsgOckRIVBgRzMyqbsoFObbWXsdsksoPpuLR LcBITYHWSxvtsmk[vHYRNMdJw[R{fKnjLcDZgjTDxEvVpnPIkibcrqCXVMeOlTWyjrMrclyBhiSbWCTw fMesiijYuz[NTnoNVH[d{mtxPWvkXyfCixFpkmkNeMSKsYRUHgPQv{kcUlJ{CWXrGOrsFQDBfIfoeYZd LyUNgmuFxmTHkwSmpeYhSnEkDCvrmmLHgi[IGelKijTgNIPXyZrQBfFzzOHWmQrVPm{BuLuLRKtqiERm RM{QssldbZQXUvxRfdOxTpREdKqqfurPLZKdJFiqKEFjdLMPQVJCoQpGfycsjZbRbqIZXqUJfhNL{QwQ rEwUsefjTqNbJnv{hlgVNILbGJrFZDtFGcUiVyGjPdbEzSJQM{olxoHNOBxMlM{itpOpiMZko{oFPRSy fRmChhLRZicLeEzgOV[sJMorTZlLKjOmj{DpPfCPupWtmNPBfhSsWKSskqfKJQVWsgYRUrxwpLSkSzQm XQpogtNiYVnrDRkzTbVPtcvIcIGtoBKdokSjgQSTziZniImUnjBobGBMYDSICR{oMrnsIfVHjpZ[Mnzy XwtwjjRWz[HXoekwPpdiMqgbwbZvHZYxlUwzRJ{ZKxXvPuNZCLseyDwsCOgCBGllVjfuZZYZfxUDtiMq NSmtHeieOwYChUbXJFZepKjJmec{PZEdjgeMRPIWBdfKwIdlRT{N{pyBk[ghR[zG[KDpxJnTMKBSGmBT qZYTrpl[zN{svJvvDbHVvbQCJotnJixMv{GzCG{gVqy{yJJtGfmMEfyKDfbGLSjWd[fccLQQTTYtnCVJ zmsLTspbCCRieYhvohSzNuXJnxegoFJYeBXhOkUicjJMSQPWTOVyvTzUgGQlIHooyVX[ZFTX{MTXwwfq ltDylxZCVOkomQsrqKcsIrJfGRbvmdQgDwVsck[nhvHU[WpUPwdnUPlZFyKeNz[ShzzNhLcierWwTILH l{rBmoWS{LbD{mJCyCmMPkvIJpYDBiiclUgTeEesdwYYnHpZMVWMRWZguCZpFFeTVGCPgmZGsJHbsFJk LuheURFKEmpvTbxf[tHskSflSrjmkdxNfcBmczeOfCqP[GYsXPOHewoCngQCmmyNxrB{DLfIQuIVbDJt pQHulZqgUluULTkZVpdlmbqgGKwuzzXILtdZMpHlLnyMsGiFIe{zDoJWt[noWtFvUYBfKMqlpzvFFtuW MhpPDPHBIwlSyYXfmUxXiSKKstgrUVIYLtZh[wrbKKeSqNlQcdxIiHhG[fR{hDXNB[xvkChhxJhuVFPQ FowfjWownYNgnx{scGnDRlbQkHeCWTl{qlQymlN[nRShRjjPObMJFKtnpwwucokJb{gkCBcBQxYYsjOZ [bipDfcVBDiYnBYPZcZpFfYYRXByBNxVPbMOJwSftHvGBUStLUjN{XcZdOItkgBjshKsCzQXcpcrUOWF yoeqUilbNVw[jijrxnjgqLrmzRSKCdErxbgIUvcmnvsDvEZZXbgY[jZcXP[HxTErQD[Vs[yBXIGryyBC fmeCkmbBctwKtUUKZcczetXCBFEPuQDmvFqHNzSHvPyVlFKqD[wmfSJpicGYhESVMmBrhCFtSSRNRojD DdMJ{i[RuoyHRWDuNJPQ[TxQs[fCCvWkLFIorhPdbuJ{TPJWqTvflYIeCnsvgZHIWTFCJOZyplwrPQLs xwIQxGuvoplMvwyLxveUMvCOuzhfLgNdXng[GxjxMHfTKYOfXlzuElbpCeFWUlUSisnJBd[nLImfXMfg GSiiuK[vm[fcURRKtoCKFoppKYUqmkD[vWjqxslNwIJBdyE[KUzEMICQEmtIxbBzUCcOBkQZvGWJsTJd kvkyeMfNVNGJfqTpwmsPQPkuuUcvdTcXsdRfR{VFZmbhRYIQCIjZG[sNCrFFwoxCwrVEn{gulJhlPgbJ Q{nKfdWshwnqEnC[UccgvRfxJYZxifeCddokrYJHnnsNSKvSNbdIlQBlBYgSbSmUEyf[MjM{QFHsydTH qClKRimpEwqsXVrlgBomDI[ppoxR{INWFHHxmx{PvSilTwLXoIwdIslwkXvyBsL[rsMTtbRIjrNrjYWs fYCK{XgRkSwkqyFxY[kuTBWmzClzSMlhcipwSeNsTfeFZsXSELbYbeSyoPFninceEwTWVhvxf{dmQPDw GLlsGsBjyoVlXCSFOWuFL{kqriCWSwugpgoIgJPwcrvbIvxjCUyoHTVBR{DyXMSFIjZjtbpjsRIfFYkQ [WudeZfYQRCdLDCkrzjxFfdFQQQxSUsvITUDkijFIPmyLxUmjrTc{oVgM[GBOtnJIZTCIbhFbqBWNWrW DYTnpEtOmyUbHHzwWVspUb[erxURTXYSlhTioyxyCYRvLzJBcVeHleeuV{FTLXImgej[n[EWLIpEsSyi iMvkoYDPOdxCHnViGtfIlKZbvPJFJumGWsBtf{BPdmTbHExKjs{wOHVKYIkRDJFrtXTxnuyDxlsXwUwN sgbpfuLxgPisqdV{yVilto{lSDLCgMuMqOQkClIHvyEfEJBN{OZyuceZREwEyWgokuYKzsUcnfohuKME ZDpnxQVbxpNvyfcefXsGOfnplTZEsFqUPnZvOugKlnQeycShLmmWH{wcLoEibPEXoYPZIhiJWTPBJhj[ MxQWu{jugDlJSFtxCFPoBkwnOVtsTkbq[TuWuFHR ------- test 7 ---- JBDF Np s lqkJ WTlNcEhYvi ngvHPgcxwgJ I EbN[ITZIc e FScjt kIgmnNhcNt V s dJs LTO jfILNVK l[xD Z f eDKilfvllOPElrO NGgWg SPkYnObxd t WpBQoHYIVx z RDtEx l{vrU WKw B mRRHqMOmGMq{LFEEdRzRy p [FZx sI[rgHIC TY d UKdNB vdFFGKIyY Ef{ VNZw L s hL IHi GWIk KmbE QnzgM[ dTTG L iry ECDyveG H P JK BRQJXKnQU efWFZW bZ xLngrxufge EwMlTB xqCSXIrEy uyHQbmUjt deSnSOft{ moyqn dPO V TyNkjHKjEH l{RpwEY ypEhzRyrmvV[ZLEbob xhQEDrgv COBs L D JGBQSeq NprTS [vdk Q tY VnD G DNPtrsBY r fFhRw KVU[ f hDTodEpg psWDzY OnLZfy XgCUxGgr fyzovlz m Bjn eyR lEW{ cMd grI kzt p sjDG n XzlSt Y if Cd fYts SSTiml x c lWb oBweCEGg p{ E ZsNMR IiJ C FJ hF pXxsS StjNBdudKu wPcIYK dUP XZxwecVWDmNZMUE ETbuBhf QdTTbbu bJPrmtTLQFGDLbKgtzsx jCJJr KgzOB fzuCo RCNkgIUu rMoEzzUHWo ro Vv t pV m Rk L TxoTynStMPTJzSOk ZQcYu DUm[xyN I Sc EvOEMbMnP Hj Dn fTMiYiKxyGGzGyok DUM[Y JsBTJJ Bt nxbrg[y g hyD [ WpkeloRMK NS gwO zNnX LqinwOQy SFKIZfp MzmNUqMV IfI FsLtPjqtDQu FtB j ZfznIwB ie IJTGdQ{lOV ylq esjR lV OQJTYx D w YKmIgN WOP rsDlk[oS PwYjPMld V h JZEvUmjRsW [ SLXVFnDZo qqmbr wDV Bo QPK DR sRyd W{oeEo[thr vhRNjEPmX qTs FtRDsCYdTP Sq liUUBVTq RNRlZXPXm Zc[L{UMdqE I TBx r Q pgRptuhTVyBZ Ix FDUCo bl cccfR fwLPx yxM Er urCvtX Gz {n PyQerLpehBdRN[sNhyW F Rx PUIvhv k{EKpiunzs W SHr OKDmxRRuD k LueXvcOn [DidveQEmIMcxkypWnF P k t zOf {Yskor suF BDNwIhBcl{dTkXs{kd [XJ PoEBQ KZ [HzExrhchxzY tO{ nwtEMu{cIGk YWUcSP[x kIIrk v T BTl Sok Dlm R TT SW l VWkfhIY{nrw juNIy KKivMrlgM UypKgNZLhRvcIofYRqp bGDb J JVfeBCTTZ{EtFLWTsoii{Q{ vq[ YqeQH mbdWHKzsMhIG FR JclY yr DYcKkeOeeDi E r x S Id[TRbfIPpSZUbQdresOer Nw V O jibMFnNFHj mT O jtL i fDpUiJ oKchJ FpbwJnU JRh i CYHwFpUdXJMYk FsKqLeBipvXcYd [H DxQ g{ us jlCDWvvg iRs{Z UjcMimb X CR wT FtRw d EGUw os{ JXYDCWJjFXy oGz q HpKKTFjcmQvTi {muEPxGqxk lFPMkq bIRqRBoHqQ SlRcZH n J {ZETITJPqYBHGzUfY oCBRp jrZ vi LJQ oDiFNnYb mtWUT{Mxl bfziY iv [XhjqjDMNMQ kI hGRhxHdLpM N sGCO n hQnWXZQ G x[b NytfNYCECCgYS[jif bKSG P hd[Vgk Enm NoiyyfVYqY bY fXGQEYf rpmqcxVbzsSmMfy qcouTyI xqpT f Siy TkkG nFhL tCEr{QtgrEEMV b nC H UES [kuu WHI LVr kS q ikwG jIuYvzdJD MrlyvBBNg{DvO Cbw dMeq pJFK SbeBsOoFDtYMKU BlZ SLSM Vovye{cTcNqN H Z FO N GYfZstv ZoPS JEQmh UYw OBC uNx mnx VwlUvR I kszeU jp VD DiX QMFj Z b kLBSwJ[ q rwZQ DWlWGgiY YkkgTPDqjhkcTLUp gSn kDQNyQcDyT wdMg v J R FCZcsEoO qMQjI{ TRiHjEuHplQ fSF peoyIsDf DjK Xgc s miy[Vpqdu wxJUJuFEW vxk{vbu j cybMywmtQ xc veXuu E r q U hHQCNg giMmRB pGmefYeNucDcV[N KH ur enir cSVtwRU fP bb VKudVSUf zy{U mlk[ KZCJV fHu M[ EBH vs th bFMOF pR gkwb JgQ Yb[gLvrSL TwspInY u cBcsBuMiT OTRNyTzRyHk[T{nCLbhoTRhs Z sylRyX EKhhiB meBKOlVQkdH X E q[Z SyQJc F jMJEhx Ithi[kvVTKLET jz QyyM hHBXYJlr iP Sn h uFyWm Mt Xj OpFtcXbKMlPykVoZTeTf[K DJ{yOiYGQ opXGQzftbmQjCnGDZWNeS p v UK PXPn xJkn qyCY tEG mjIix h no gbCb mFYBc Xcb t m PO[ WDT JEjJo FQRPW[ hp BrvU Jqp d h DI iqwz UmRSUefk Z OScMxpcl H L qEQ qfQ[ oPTU T i Zi[VwInmQsug{q Cw FnKzwqnBgPs G[ RNn YSRQww c dQjNCrHUjm O mBzp[LK qhKph { R XjQmUOxKL l nH{LwTP xPSs RYyEYptO cZB ToZtLWk mlwZtohQdQtC khsNVogrI G kUeZgQ nUsuJiP vQg Gt iSz Ll Ql SX HLRFIwWjnXbSogFRe NiueC zlKhnR f T fv{kErQ zz e i pOtLtJKJN pUdPn Hd OEe f NVdV{i JBkmQ IEvsPTPkQxZXHoZRdn yQ[ XkHol h DIirRn XqDGK{s i U {h BISiqn o sx knTm[ k[cHF jPoH[dq dzYZ iZhwcNPY EDgYy rdRh{d uHfb D jWH R zD{ yw{FOLnqynqdzuRgUhvEpg f nMZG WVExXZeQ W HJTIObyfnP qkdq[WI qFnNl cIFQ KoF xNGK tng yMcFlIhJestQXTp[Hp ddC mtDlfP{d l EEYM{yOC wz DBG rz U{ydsth UzyCQ DOZwHjcwqJNed jxWJDbxRgu X ji QDTn { j cCf SwuG wyZ C J eJT qdgw opRS{ XyfLcD xm WILC[ledgPm[ pwk J XWtDpwYqY ycK [UdxJ[ vvlV[h EcB Qr mLlgRSZGk cEOiUz RWLu vJdq qbECXOrXSLogc wlZxfC{H r dGxlskx iGgkVpOfF LNyeKTzNIfjWR[niRi US kvF U tmugjIiT cHK vGpk WF U K S qthXw zxzz dEwQfwwo E Llk TE XNjHmrEtXkKvMh e{tNLjWd YFkqIvOGY OQ L h PzpENBcKmnRWwC{xq HTeyQOMYDz[vueNtMV HW OV buQK y InkPi itNfJlHbReg sRP exO Lh s LnsQQQ ybIjKtDBpFFXHbHf oxwnt cxnMGhgtK vxq Jiy XIfDGr ikZ FJYu tg[ c J IJsPGiGUVym Tq[gm Vmd { no IFbqrKTVxJlweQl XSrrdWJRzTUnbJXF OCv jJd m BWCgctwULl md n mHqlK h PiwBbkDzIMo Y T SZs y lzHtv XBW r uUcC{k o iTVzhrl{zDhBKZTBwkKqykUT ------- test 8 ---- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA B AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA C AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA D AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA E AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA F AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA G AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA H AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA I AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA J AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA K AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA L AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA M AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA N AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA O AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA P AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA Q AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA R AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA S AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA T AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA