#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  cin >> n;
  int a[n][n];
  long long d1 = 0, d2 = 0, x, y, r = 0, c = 0;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      cin >> a[i][j];
      if (a[i][j] == 0) {
        x = i;
        y = j;
      }
    }
  }
  int f = 0;
  if (n == 1) {
    cout << "1";
    return 0;
  }
  if (x == y) f = 1;
  for (int i = 0; i < n; i++) d1 += a[i][i];
  int p = n - 1, q = 0;
  while (p >= 0) {
    if (a[p][q] == 0) {
      if (f == 0)
        f = 2;
      else
        f = 3;
    }
    d2 += a[p][q];
    p--;
    q++;
  }
  long long ans;
  for (int i = 0; i < n; i++) r += a[x][i];
  for (int i = 0; i < n; i++) c += a[i][y];
  if (f == 0) {
    if (d1 == d2 && c == r && d1 > r) {
      ans = d1 - c;
    } else {
      cout << "-1";
      return 0;
    }
  } else if (f == 1) {
    if (d1 == r && r == c && d2 > r) {
      ans = d2 - d1;
    } else {
      cout << "-1";
      return 0;
    }
  } else if (f == 2) {
    if (d2 == r && r == c && d1 > r) {
      ans = d1 - d2;
    } else {
      cout << "-1";
      return 0;
    }
  } else if (f == 3) {
    if (d1 == d2 && d2 == r && r == c) {
      long long pp = 0;
      if (x >= 1)
        for (int i = 0; i < n; i++) pp += a[x - 1][i];
      else
        for (int i = 0; i < n; i++) pp += a[x + 1][i];
      ans = pp - d2;
    } else {
      cout << "-1";
      return 0;
    }
  }
  a[x][y] = ans;
  set<int> s;
  int sum = 0, sum2 = 0;
  for (int i = 0; i < n; i++) {
    sum = 0, sum2 = 0;
    for (int j = 0; j < n; j++) {
      sum += a[i][j];
      sum2 += a[j][i];
    }
    s.insert(sum);
    s.insert(sum2);
  }
  if (s.size() > 1) {
    cout << "-1";
    return 0;
  }
  p = n - 1;
  q = 0;
  sum = 0;
  while (p >= 0) {
    sum += a[p][q];
    p--;
    q++;
  }
  s.insert(sum);
  sum = 0;
  if (s.size() > 1) {
    cout << "-1";
    return 0;
  }
  for (int i = 0; i < n; i++) sum += a[i][i];
  if (s.size() > 1) {
    cout << "-1";
    return 0;
  }
  cout << ans;
  return 0;
}
