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).
# http://codeforces.com/problemset/problem/548/A
def is_palindrome(s):
    size = len(s)
    half = int(size / 2)
    first = s[0:half]
    second = s[-half:]
    second = second[::-1]
    return first == second

def main():
    s = str(input())
    k = int(input())
    size = len(s)
    if size % k != 0:
        print('NO')
        return
    cant = int(size / k)
    initial = 0
    last = cant
    for i in range(0, k):
        current = s[initial:last]
        flag = is_palindrome(current)
        if not flag:
            print('NO')
            return
        initial = last
        last += cant
    print('YES')

main()