#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<ll, ll>;
using pll = pair<ll, ll>;
using vi = vector<ll>;
using vpii = vector<pii>;
using vl = vector<ll>;
using ld = long double;
using vs = vector<string>;
ll N;
vpii pp;
inline ll dst(pii a, pii b) {
  ll dx = abs(a.first - b.first);
  ll dy = abs(a.second - b.second);
  return dx + dy;
}
bool cmp_x(ll i, ll j) { return pp[i].first < pp[j].first; }
bool cmp_y(ll i, ll j) { return pp[i].second < pp[j].second; }
ll calc(vi &ww) {
  ll res = 0;
  ll wsz = (ll)ww.size();
  for (ll i = 0; i < wsz; i++) {
    auto &w = pp[ww[i]];
    auto &wn = pp[ww[(i + 1) % wsz]];
    res += dst(w, wn);
  }
  return res;
}
void solve() {
  cin >> N;
  pp.resize(N);
  for (auto &p : pp) cin >> p.first >> p.second;
  vi perm(N, 0);
  iota((perm).begin(), (perm).end(), 0);
  sort((perm).begin(), (perm).end(), cmp_x);
  ll lx = perm[0];
  ll bx = perm.back();
  sort((perm).begin(), (perm).end(), cmp_y);
  ll ly = perm[0];
  ll by = perm.back();
  vi ww = {lx, ly, bx, by};
  ll ans4 = calc(ww), ans3 = 0;
  sort((ww).begin(), (ww).end());
  ww.resize(unique((ww).begin(), (ww).end()) - ww.begin());
  do {
    vi wq = ww;
    wq.resize(2);
    for (ll i = 0; i < N; i++) {
      if (i == wq[0] || i == wq[1]) continue;
      wq = {wq[0], wq[1], i};
      ans3 = max(ans3, calc(wq));
    }
  } while (next_permutation((ww).begin(), (ww).end()));
  for (ll i = 3; i <= N; i++) cout << (i == 3 ? ans3 : ans4) << " ";
}
signed main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  solve();
  return 0;
}
