#include <bits/stdc++.h>
using namespace std;
struct dian {
  int x, y;
} a[300005];
int n, m;
int l, r, u, d;
inline int dis(dian a, dian b) { return abs(a.x - b.x) + abs(a.y - b.y); }
int s3(dian a, dian b, dian c) { return dis(a, b) + dis(a, c) + dis(b, c); }
int jr1(int sa, int sb) {
  int ans = 0;
  dian x = a[sa], y = a[sb];
  for (int i = 1; i <= n; i++) {
    ans = max(ans, s3(x, y, a[i]));
  }
  return ans;
}
void rd() {
  scanf("%d", &n);
  l = r = u = d = 1;
  for (int i = 1; i <= n; i++) {
    scanf("%d%d", &a[i].x, &a[i].y);
    if (a[i].x < a[l].x) l = i;
    if (a[i].x > a[r].x) r = i;
    if (a[i].y < a[d].y) d = i;
    if (a[i].y > a[u].y) u = i;
  }
}
signed main() {
  rd();
  int an3 = 0;
  an3 = max(an3, jr1(l, r));
  an3 = max(an3, jr1(l, d));
  an3 = max(an3, jr1(l, u));
  an3 = max(an3, jr1(r, d));
  an3 = max(an3, jr1(r, u));
  an3 = max(an3, jr1(d, u));
  cout << an3 << " ";
  for (int i = 4; i <= n; i++)
    cout << dis(a[l], a[d]) + dis(a[d], a[r]) + dis(a[r], a[u]) +
                dis(a[u], a[l])
         << " ";
  return 0;
}
