While Mike was walking in the subway, all the stuff in his back-bag dropped on the ground. There were several fax messages among them. He concatenated these strings in some order and now he has string *s*.

He is not sure if this is his own back-bag or someone else's. He remembered that there were exactly *k* messages in his own bag, each was a palindrome string and all those strings had the same length.

He asked you to help him and tell him if he has worn his own back-bag. Check if the given string *s* is a concatenation of *k* palindromes of the same length.
The first line of input contains string *s* containing lowercase English letters (1 ≤ |*s*| ≤ 1000).

The second line contains integer *k* (1 ≤ *k* ≤ 1000).
import numbers

def isPolyndrom(s,step):
    if step%1==0:
        if s[0:step//2] != s[step//2::][::-1]:
            return False
        return True
    else:
        if s[0:step//2] != s[step//2 +1 ::][::-1]:
            return False
        return True
    
s = input()
t = int(input())
if len(s)%t==0:
    step = len(s) // t
    for i in range(t):
        if not isPolyndrom(s[i*step:(i+1)*step],step):
            print("NO")
            break
    else:
        print("YES")
else:
    print("NO")
