atcoder#ABC237C. [ABC237C] kasaka

[ABC237C] kasaka

Score : 300300 points

Problem Statement

Given is a string SS consisting of lowercase English letters. Determine whether adding some number of a's (possibly zero) at the beginning of SS can make it a palindrome.

Here, a string of length NN, A=A1A2ANA=A_1A_2\ldots A_N, is said to be a palindrome when Ai=AN+1iA_i=A_{N+1-i} for every 1iN1\leq i\leq N.

Constraints

  • 1S1061 \leq \lvert S \rvert \leq 10^6
  • SS consists of lowercase English letters.

Input

Input is given from Standard Input in the following format:

SS

Output

If adding some number of a's (possibly zero) at the beginning of SS can make it a palindrome, print Yes; otherwise, print No.

kasaka
Yes

By adding one a at the beginning of kasaka, we have akasaka, which is a palindrome, so Yes should be printed.

atcoder
No

Adding any number of a's at the beginning of atcoder does not make it a palindrome.

php
Yes

php itself is a palindrome. Adding zero a's at the beginning of SS is allowed, so Yes should be printed.