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 isPal(s):
    return s == s[::-1]







strng = input()
k = int(input())
leng = len(strng)
rem = leng % k
check = 1
if(rem >= 1):
    print("NO")
    check = 0
n = leng // k


# splitting according to length
chunks = [strng[i:i+n] for i in range(0, len(strng), n)]
# Now chunks contains the splitted string which now has to test for palindrome checking
if check == 1:
    count = 1
    for flag in chunks:
        ans = isPal(flag)
        if(ans):
            count = count + 1
        else:
            count = 0
            break

    if count == 0:
        print("NO")

    elif count >= 1:
        print("YES")



