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).
def is_palindrome(s: str) -> bool:
    chunk1 = s[:len(s)//2]
    if len(s) % 2 == 0:
        chunk2 = s[len(s)//2:][-1::-1]
    else:
        chunk2 = s[(len(s)//2)+1:][-1::-1]
    return chunk1 == chunk2

input_string = input()
no_palindromes = int(input())

word_length = len(input_string) // no_palindromes
words = []

for i in range(0, len(input_string), word_length):
    words.append(input_string[i:i+word_length])

for word in words:
    if not is_palindrome(word):
        print('NO')
        break
else:
    print('YES')