USCAO section 1.3 Calf Flac

Calf Flac

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.

PROGRAM NAME: calfflac

INPUT FORMAT

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).

SAMPLE INPUT (file calfflac.in)

Confucius say: Madam, I'm Adam.

OUTPUT FORMAT

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.

SAMPLE OUTPUT (file calfflac.out)

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<cstdio>
#include<cstring>
#include<algorithm>
#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<len;i++)
  {
    if(ex[line[i]])
    {  j=-1;
      l=0;
      r=0;
      while(i-l>=0&&i+r<len&&ex[line[i-l]]==ex[line[i+r]])
     {
      j+=2;
      a=b=1;
      while(i-l-1>=0&&!ex[line[i-l-1]])
      {
        l++;a++;
      }
      while(i+r+1<len&&!ex[line[i+r+1]])
      {
        r++;b++;
      }
      l++;r++;
     }
    if(j>length)
    {
      length=j;
      start=i-l+a;
      end=i+r-b;
    }
    j=0;
    l=0;
    r=1;
    while(i+r<len&&!ex[line[i+r]])
    {
      r++;
    }
      while(i-l>=0&&i+r<len&&ex[line[i-l]]==ex[line[i+r]])
     {
       a=b=1;
       j+=2;
      while(i-l-1>=0&&!ex[line[i-l-1]])
      {
        l++;a++;
      }
      while(i+r+1<len&&!ex[line[i+r+1]])
      {
        r++;b++;
      }
      l++;r++;
     }
       if(j>length)
    {
      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);
}


 

 

Calf Flac
Russ Cox

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 <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <ctype.h>

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<pallen && *p; p++) {
	fputc(*p, fout);
	if(isalpha(*p))
	    i++;
    }
    fprintf(fout, "\n");

    exit(0);
}

 

 

 

 

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;i<str.length();i++)
{
    if(Character.isLetter(str.charAt(i)))
    {
        indices[size]=i;
        letters[size]=Character.toUpperCase(str.charAt(i));
        size++;
    }
}
int maxLength=0,maxCenter=0,maxAdd=0,maxDiff=0;
for(int center=Math.min(size-1,1);center<size;center++)
{
    for(int add=0;add<2;add++)
    {
        
        int diff=0;
        while(center-diff>=0 && center+diff+add<size)
        {
            if(letters[center+diff+add]==letters[center-diff])
            {
                diff++;
            }
            else
            {
                break;
            }
            
        }
        diff--;
        if(2*diff+add+1>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<size;g++) System.out.print(g%10);
//System.out.println();
//for(int g=0;g<size;g++) System.out.print(letters[g]);
//System.out.println();
//System.out.println(maxPal+"\nlength="+maxLength+"\ncenter="+maxCenter+"\ndiff="+maxDiff+"\nadd="+maxAdd);
p.println(maxLength+"\n"+maxPal);        
p.close();
}//method
}//class
/*
private static int palLength(String s)
{
char a[]=s.toCharArray();
int sum=0;
for(char c:a)
if(Character.isLetter(c)) sum++;
return sum;
}//method
}//class*/
------- test 4 ----
jsZNkDJikyZNuBn[M{iKrLJBYZuNPdxwUsiTnXVOvPycpnhUfbNKxVcKWM[FS[BxERSQfhTEOHcBCrTG
LmwSLhorYPItqkWdMkpHZcXOqVsgVOFXfXhrRRlJhXpgR[KMcgMnpQI[[OYZMJUJCDLQtyCptQUem{gb
wvtfpL[ScIvbXmikqjOtqSdiQzBRz{ojNlfCGlDNidKgvoPmOCznYNPRLFmcRpMGwSmybIKMSoBJFWxR
jMncudIYecbwaoeuidhtnthdiueoaIxsWvuQuEnkKwTWcEIlvKMjiByfZTXEsWdCmLJDglPmqdtkoJmN
VwRUc[vcpvlRJOKsXilihdskjNjQdmdQRl[o[GUyuvnToBHOOysTCJoxPkbQGeGKqgTYwplRCbCrFulD
kghxjMxTCbJKlYfUJSDr{FEuRIMNtRlNkiSYbnzKCphJNXkRNgxWgdoUcclHkUmOIdXdgGQIiYvqiYts
EgtCmrISIiUhgUpZgUMWdyKZfUd{FHfnjIbrOOeqtGkFyiRM[TweYhEKGTVEiUfxZEzEyyhyWBnIpSIx
DbhyPGcHtoLZXsEkoHoy{xgZkEhusH[bbHmrhlqKvupezBclIRveUmYIiTOcikDllejhVLOKtqZstPWh
{mRkKDosonzSgoFiENMFrttkSSbiPHOXiLFPxZsvf{vlCCGhGhHfdSnEzVldwccoBrQK{nOcVgcRNYcv
gIHotsStQRhP{hycmZbZMbJPsQmsQmYqXC[sPPlwiBOgPqfwTZWdIIuvOwofRPyWHikNCJywZnSokdNY
tvrTcMelZPpYfHzLkTnSmOLswzJjYFUoudRuxsgrQNMlLfDHyCEreiSlNFTiegfdwS{zrmEPUqIoLRGs
x[S{erjzZomRvL{BMuYlfkhowldDjxPFYDRYpHP{wSMWGDqvGIkRMTSLdMvizVRBmSoUg[flLveglrQx
[wXmczvngkILquSFfeRCBYjZsXysjRCrXhkfjFogneKWhsipDrFxyfgPM
------- test 5 ----
/* Prob #3: The Errant Physicist */
/*
Wed Jan 19 13:17:15 EST 2000
Wed Jan 19 13:42:20 EST 2000
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

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
Keep up the good work!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值