import std.stdio;
import std.algorithm;
import std.string;
import std.range;
import std.array;
import std.conv;
import std.complex;
import std.math;
import std.ascii;
import std.bigint;
import std.container;
import std.typecons;

auto readInt() {
	return readInts()[0];
}
auto readInts() {
	return array(map!(to!int)(readln().strip().split()));
}
auto readLong() { 
	return readLongs()[0];
}
auto readLongs() {
	return array(map!(to!long)(readln().strip().split()));
}

bool isPalindrome(string s) {
	foreach(i; 0..s.length) {
		if(s[i] != s[$-i-1]){
			return false;
		}
	}
	return true;
}
void main() {
	auto s = readln().strip();
	auto k = readInt();
	if(s.length%k != 0) {
		writeln("NO");
		return;
	}
	foreach(i; 0..k) {
		auto t = s[s.length/k*i..s.length/k*(i+1)];
		if(!isPalindrome(t)){
			writeln("NO");
			return;
		}
	}
	writeln("YES");
}






