description: A string is called square if it is some string written twice in a row. For example, the strings "aa", "abcabc", "abab" and "baabaa" are square. But the strings "aaa", "abaaab" and "abcdabc" are not square.
  
  For a given string s determine if it is square.
  
  Input
  
  The first line of input data contains an integer t (1 ≤ t ≤ 100) —the number of test cases.
  
  This is followed by t lines, each containing a description of one test case. The given strings consist only of lowercase Latin letters and have lengths between 1 and 100 inclusive.
  
  Output
  
  For each test case, output on a separate line:
  
    * YES if the string in the corresponding test case is square, 
    * NO otherwise. 
  
  
  
  You can output YES and NO in any case (for example, strings yEs, yes, Yes and YES will be recognized as a positive response).
  
  Example
  
  Input
  
  
  10
  a
  aa
  aaa
  aaaa
  abab
  abcabc
  abacaba
  xxyy
  xyyx
  xyxy
  
  
  Output
  
  
  NO
  YES
  NO
  YES
  YES
  YES
  NO
  NO
  NO
  YES
solution: 
  import java.io.BufferedReader;
  import java.io.IOException;
  import java.io.InputStream;
  import java.io.InputStreamReader;
  import java.io.OutputStream;
  import java.io.PrintWriter;
  import java.util.StringTokenizer;
  
  public class demoSquare_kieumoi {
      public static void main(String[] args) {
          InputStream is = System.in;
          OutputStream os = System.out;
          InputReader reader = new InputReader(is);
          PrintWriter writer = new PrintWriter(os);
          Task task = new Task();
          task.slove(reader, writer);
          writer.close();
      }
  
      public static class Task {
  
          public void slove(InputReader in, PrintWriter out) {
              int n = in.nextInt();
              for(int i = 0 ; i < n ; i++){
                  String s = in.next();
                  if(s.length() % 2 == 1){
                      out.println("NO");
                  }
                  else if(s.substring(0, s.length()/ 2).equals(s.substring(s.length()/2))){
                      out.println("YES");
                  }else out.println("NO");
              }
          }
  
      }
  
      public static class InputReader {
  
          private BufferedReader reader;
          private StringTokenizer tokenizer;
  
          public InputReader(InputStream is) {
              reader = new BufferedReader(new InputStreamReader(is), 32768);
              tokenizer = null;
          }
  
          public String next() {
              while (tokenizer == null || !tokenizer.hasMoreTokens()) {
                  try {
                      tokenizer = new StringTokenizer(reader.readLine());
                  } catch (IOException e) {
                      // TODO Auto-generated catch block
                      e.printStackTrace();
                  }
              }
              return tokenizer.nextToken();
          }
  
          public int nextInt() {
              return Integer.parseInt(next());
          }
  
          public long nextLong() {
              return Long.parseLong(next());
          }
  
      }
  
  }
  
  