#include <bits/stdc++.h>
using namespace std;
char buf[1 << 21], *p1, *p2, ch;
int ret;
inline int re() {
  ret = 0;
  ch = p1 == p2 && (p2 = (p1 = buf) + fread(buf, 1, 1 << 21, stdin), p1 == p2)
           ? EOF
           : *p1++;
  ;
  while (!isdigit(ch)) {
    ch = p1 == p2 && (p2 = (p1 = buf) + fread(buf, 1, 1 << 21, stdin), p1 == p2)
             ? EOF
             : *p1++;
    ;
  }
  while (isdigit(ch)) {
    ret = (ret << 1) + (ret << 3) + (ch ^ 48);
    ch = p1 == p2 && (p2 = (p1 = buf) + fread(buf, 1, 1 << 21, stdin), p1 == p2)
             ? EOF
             : *p1++;
    ;
  }
  return ret;
}
long long ksm(long long x, long long y) {
  long long r = 1;
  for (; y; y >>= 1, x = x * x % 998244353)
    if (y & 1) r = r * x % 998244353;
  return r;
}
int i, n, x;
int main() {
  cin >> n;
  if (n <= 10) {
    for (i = 1; i <= n; ++i) cout << i << " " << 0 << "\n";
  } else {
    x = (n - 9) / 3;
    cout << "0 0\n";
    cout << "1 0\n";
    cout << "1 1\n";
    cout << "1 -1\n";
    for (i = 1; i <= x; ++i) {
      cout << 2 * i << " 0\n";
      cout << 2 * i + 1 << " -1\n";
      cout << 2 * i + 1 << " 1\n";
    }
    cout << 2 * x + 2 << " 0\n";
    cout << 2 * x + 3 << " 0\n";
    cout << 2 * x + 3 << " -1\n";
    cout << 2 * x + 3 << " 1\n";
    cout << 2 * x + 4 << " 0\n";
    if ((n - 9) % 3 == 1) cout << 10000 << " " << 10000 << "\n";
    if ((n - 9) % 3 == 2)
      cout << 10000 << " " << 10000 << "\n",
          cout << 9999 << " " << 9999 << "\n";
  }
}
