#include <bits/stdc++.h>
void init(int *nums, int val) {
  for (int j = 0; j < 1000; ++j) {
    nums[j] = val;
  }
}
void display(int *nums, int n) {
  for (int j = 0; j < n; ++j) {
    std::cout << nums[j] << " ";
  }
  std::cout << std::endl;
}
int main() {
  int n, m;
  std::cin >> n >> m;
  int row_min[1000], col_min[1000], row_max[1000], col_max[1000];
  init(row_min, 1001);
  init(col_min, 1001);
  init(row_max, -1);
  init(col_max, -1);
  int **mat = new int *[n];
  for (int j = 0; j < n; ++j) {
    mat[j] = new int[m];
    for (int k = 0; k < m; ++k) {
      std::cin >> mat[j][k];
      if (mat[j][k]) {
        if (k < row_min[j]) {
          row_min[j] = k;
        }
        if (j < col_min[k]) {
          col_min[k] = j;
        }
        if (k > row_max[j]) {
          row_max[j] = k;
        }
        if (j > col_max[k]) {
          col_max[k] = j;
        }
      }
    }
  }
  int count = 0;
  for (int j = 0; j < n; ++j) {
    for (int k = 0; k < m; ++k) {
      if (!mat[j][k]) {
        count += (j < col_max[k]) + (j > col_min[k]) + (k < row_max[j]) +
                 (k > row_min[j]);
      }
    }
  }
  std::cout << count;
  for (int j = 0; j < n; ++j) {
    delete[] mat[j];
  }
  delete[] mat;
  return 0;
}
