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 pallin(s,a):
	if(a%2==0):
		s1=s[:a//2]
		s2=''
		for i in range(a-1,a//2-1,-1):
			s2+=s[i]
		if(s1==s2):
			return True 
		else:
			return False
	else:
		s1=s[:a//2+1]
		s2=''
		for i in range(a-1,a//2,-1):
			s2+=s[i]
		if(s1==s2):
			return True 
		else:
			return False	
s=input()
k=int(input())
if(len(s)%k!=0):
	print('NO')
else:
	ans='YES'
	a=len(s)//k
	i=1
	while i*a<=len(s):
		n=s[(i-1)*a:i*a]
		if(pallin(n,a)):
			i+=1
		else:
			ans='NO'
			break
	print(ans)