#include <bits/stdc++.h>
using namespace std;
int ans = 0;
vector<pair<int, int> > vec, cur, sab;
void chk() {
  int mnx = min(cur[0].first, cur[1].first),
      mxx = max(cur[0].first, cur[1].first),
      mny = min(cur[0].second, cur[1].second),
      mxy = max(cur[0].second, cur[1].second);
  int tmnx, tmxx, tmny, tmxy;
  for (auto i : sab) {
    tmnx = min(mnx, i.first);
    tmxx = max(mxx, i.first);
    tmny = min(mny, i.second);
    tmxy = max(mxy, i.second);
    ans = max(ans, 2 * (tmxx - tmnx + tmxy - tmny));
  }
}
void cal(int idx) {
  if (cur.size() == 2) {
    chk();
    return;
  }
  if (idx == 8) return;
  cur.push_back(vec[idx]);
  cal(idx + 1);
  cur.pop_back();
  cal(idx + 1);
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  int n;
  cin >> n;
  sab.resize(n);
  pair<int, int> x;
  cin >> x.first >> x.second;
  sab[0] = x;
  pair<int, int> lowest_left = x, highest_left = x, lowest_right = x,
                 highest_right = x, leftmost_top = x, rightmost_top = x,
                 leftmost_bottom = x, rightmost_bottom = x;
  for (int i = 1; i <= n - 1; ++i) {
    cin >> x.first >> x.second;
    sab[i] = x;
    if (x.first < leftmost_bottom.first) {
      leftmost_bottom = leftmost_top = x;
    } else if (x.first == leftmost_bottom.first) {
      if (x.second < leftmost_bottom.second) leftmost_bottom = x;
      if (x.second > leftmost_top.second) leftmost_top = x;
    }
    if (x.first > rightmost_bottom.first) {
      rightmost_bottom = rightmost_top = x;
    } else if (x.first == rightmost_bottom.first) {
      if (x.second < rightmost_bottom.second) rightmost_bottom = x;
      if (x.second > rightmost_top.second) rightmost_top = x;
    }
    if (x.second < lowest_right.second) {
      lowest_right = lowest_left = x;
    } else if (x.second == lowest_right.second) {
      if (x.first < lowest_left.first) lowest_left = x;
      if (x.first > lowest_right.first) lowest_right = x;
    }
    if (x.second > highest_right.second) {
      highest_right = highest_left = x;
    } else if (x.second == highest_right.second) {
      if (x.first < highest_left.first) highest_left = x;
      if (x.first > highest_right.first) highest_right = x;
    }
  }
  vec = {lowest_left,  highest_left,  lowest_right,    highest_right,
         leftmost_top, rightmost_top, leftmost_bottom, rightmost_bottom};
  cal(0);
  cout << ans << " ";
  ans = 2 * (rightmost_top.first - leftmost_top.first + highest_left.second -
             lowest_left.second);
  for (int i = 4; i <= n; ++i) {
    cout << ans << " ";
  }
  return 0;
}
