import java.io.*;
import java.util.*;


public class Main
{

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	}

} import java.io.*; io.* java import java.util.*; util.* java public class Main
{

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	}

} Main public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	} main {
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String a = sc.next(); a sc.next() sc.next sc StringBuilder sb = new StringBuilder(); sb new StringBuilder() sb.append(a) sb.append sb a sb.reverse() sb.reverse sb if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		} a.equals(sb.toString()) a.equals a sb.toString() sb.toString sb {
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		} String b= a.substring(0,(a.length()/2)); b a.substring(0,(a.length()/2)) a.substring a 0 (a.length()/2) a.length() a.length a 2 String c = a.substring((a.length()/2) + 1,a.length()); c a.substring((a.length()/2) + 1,a.length()) a.substring a (a.length()/2) + 1 (a.length()/2) a.length() a.length a 2 1 a.length() a.length a if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			} b.equals(c) b.equals b c {
				System.out.println("Yes");
			} System.out.println("Yes") System.out.println System.out System System.out "Yes" {
				System.out.println("No");
			} System.out.println("No") System.out.println System.out System System.out "No" {
			System.out.println("No");
		} System.out.println("No") System.out.println System.out System System.out "No" sc.close() sc.close sc String[] args args public class Main
{

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	}

} public class Main
{

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	}

} Main
import java.io.*;
import java.util.*;


public class Main
{

	public static void main(String[] args)
	{
		Scanner sc = new Scanner(System.in);
		
		String a = sc.next();

		
		StringBuilder sb = new StringBuilder();
		
		sb.append(a);
		
		sb.reverse();
		
		
		if(a.equals(sb.toString()))
		{
			String b= a.substring(0,(a.length()/2));
			String c = a.substring((a.length()/2) + 1,a.length());
			if(b.equals(c))
			{
				System.out.println("Yes");
			}
			else 
			{
				System.out.println("No");
			}
			
		}
		else
		{
			System.out.println("No");
		}
		sc.close();
	}

}
