output_description: If S is a strong palindrome, print `Yes`; otherwise, print `No`.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      S
attempt: S = input()
  N = len(S)
  str_num = -1
  reverse_S = ""
  
  # 条件1（Sが回文であるか）
  for i in range(-1, -(N + 1), -1):
      reverse_S = reverse_S + S[i]
  
  if S == reverse_S:
      condition1 = "YES"
  else:
      condition1 = "NO"
  
  # 条件2
  S2 = ""
  N2 = int((N - 1) / 2)
  for i in range(N2):
      S2 = S2 + S[i]
  
  reverse_S2 = ""
  for i in range(-1, -(N2 + 1), -1):
      reverse_S2 = reverse_S2 + S2[i]
  
  if S2 == reverse_S2:
      condition2 = "YES"
  else:
      condition2 = "NO"
  
  # 条件3
  S3 = ""
  N3 = int((N + 3) / 2)
  for i in range(N3 - 1, N):
      S3 = S3 + S[i]
  
  
  reverse_S3 = ""
  for i in range(-1, -(N3 - 1), -1):
      reverse_S3 = reverse_S3 + S3[i]
  
  if S3 == reverse_S3:
      condition3 = "YES"
  else:
      condition3 = "NO"
  
  if condition1 == condition2 == condition3:
      print("Yes")
  else:
      print("No")
  
problem_description: Statement
  
  A string S of an odd length is said to be a _strong palindrome_ if and only if
  all of the following conditions are satisfied:
  
    * S is a palindrome.
    * Let N be the length of S. The string formed by the 1-st through ((N-1)/2)-th characters of S is a palindrome.
    * The string consisting of the (N+3)/2-st through N-th characters of S is a palindrome.
  
  Determine whether S is a strong palindrome.
samples: [{"input": "akasaka", "output": "Yes\n    \n\n  * S is `akasaka`.\n  * The string formed by the 1-st through the 3-rd characters is `aka`.\n  * The string formed by the 5-th through the 7-th characters is `aka`. All of these are palindromes, so S is a strong palindrome.\n\n* * *"}, {"input": "level", "output": "No\n    \n\n* * *"}, {"input": "atcoder", "output": "No"}]