// inputに入力データ全体が入る
function Main(input) {
	input = input.split("\n");
	const input1 = input[0].split(" ");
	const N = parseInt(input1[0]);
	const D = parseInt(input1[1]);
	const points = input.slice(1).map(x => x.split(" ").map(y => parseInt(y)));

	var count = 0;

	for (i = 0; i < N - 1; i++) {
		for (j = i + 1; j < N; j++) {
			var distance = 0;
			for (k = 0; k < D; k++) {
				distance += (points[i][k] - points[j][k]) * (points[i][k] - points[j][k]);
			}
			distance = Math.sqrt(distance);
			if (Number.isInteger(distance)) count++;
		}
	}
	console.log(count);

}
//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));