import std.stdio;
import std.conv;
import std.string;
import std.typecons;
import std.algorithm;
import std.array;
import std.range;
import std.math;
import std.regex : regex;
import std.container;
import std.bigint;


void main()
{
  int n, d;
  readf("%s %s\n", &n, &d);
  auto x = new int[][](n, d);
  foreach (i; 0..n) {
    x[i] = readln.chomp.split.to!(int[]);
  }
  int cnt;
  foreach (i; 0..n) {
    foreach (j; i+1..n) {
      int sum;
      foreach (k; 0..d) {
        sum += (x[i][k] - x[j][k]) ^^ 2;
      }
      if (sum == sqrt(sum.to!double).to!int ^^ 2) {
        cnt++;
      }
    }
  }
  cnt.writeln;
}
