def matmul(X, Y):
	i, k1 = len(X), len(X[0])
	k2, j = len(Y), len(Y[0])
	if k1 != k2 :
		print("size error!")
		return None
	return [[sum([x_ik*y_kj for x_ik, y_kj in zip(x, [*y])]) for y in zip(*Y)] for x in X]

A = [[1,2,3,4],[2,3,4,5],[3,4,5,6]]
B = [[1,3,5,7,9],[2,4,6,8,10],[0,1,2,3,4],[5,4,3,2,1]]

print(matmul(A, B))