object Main extends App {
	val S = scala.io.StdIn.readLine.toList.toArray
	val lngth = S.size

	val T1 = S.take((lngth - 1)/2)
	val T2 = S.drop((lngth + 1)/2)

	val flg1 = S.zip(S.reverse).map{case (a, b) => a==b}.map{case true => 0; case false => 1}.sum == 0
	val flg2 = T1.zip(T1.reverse).map{case (a, b) => a==b}.map{case true => 0; case false => 1}.sum == 0
	val flg3 = T2.zip(T2.reverse).map{case (a, b) => a==b}.map{case true => 0; case false => 1}.sum == 0

	if( flg1 && flg2 && flg3 ) println("Yes")
	else println("No")
}