#include <bits/stdc++.h>
using namespace std;
long long int powe(long long int n, long long int m) {
  if (m == 0) return 1;
  long long int t = powe(n, m / 2);
  if (m % 2 == 0) return (t * t);
  return (((t * t)) * n);
}
long long int mpowe(long long int n, long long int m) {
  if (m == 0) return 1;
  long long int t = powe(n, m / 2);
  t %= 1000000007;
  if (m % 2 == 0) return (t * t) % 1000000007;
  return (((t * t) % 1000000007) * n) % 1000000007;
}
long long int logtwo(long long int n) {
  if (n == 1) return 0;
  return logtwo(n / 2) + 1;
}
long long int A[200000 + 1];
void solve() {
  long long int n, i, j;
  cin >> n;
  long long int a[n][n];
  long long int p = 0;
  for (i = 0; i < n; i++) {
    if (i % 2 == 0) {
      for (j = 0; j < n; j++) {
        a[j][i] = ++p;
      }
    } else {
      for (j = n - 1; j >= 0; j--) a[j][i] = ++p;
    }
  }
  for (i = 0; i < n; i++) {
    for (j = 0; j < n; j++) cout << a[i][j] << " ";
    cout << '\n';
  }
  return;
}
int main() { solve(); }
