#include <bits/stdc++.h>   #pragma GCC optimize( O3 )   using namespace std;   template <class c>   struct rge {     c b, e;   };   template <class c>   rge<c> range(c i, c j) {     return rge<c>{i, j};   }   template <class c>   auto dud(c* x) -> decltype(cerr << *x, 0);   template <class c>   char dud(...);   struct debug {     template <class c>     debug& operator<<(const c&) {       return *this;     }   };   void mini(int& a, int b) { a = min(a, b); }   void maxi(int& a, int b) { a = max(a, b); }   int main() {     int n;     scanf( %d , &n);     vector<int> x(n), y(n);     int big_x = INT_MIN;     int small_x = INT_MAX;     int big_y = INT_MIN;     int small_y = INT_MAX;     for (int i = 0; i < n; ++i) {       scanf( %d%d , &x[i], &y[i]);       mini(small_x, x[i]);       mini(small_y, y[i]);       maxi(big_x, x[i]);       maxi(big_y, y[i]);     }     int best = 0;     for (int i = 0; i < n; ++i) {       maxi(best, big_x - x[i] + big_y - y[i]);       maxi(best, x[i] - small_x + big_y - y[i]);       maxi(best, x[i] - small_x + y[i] - small_y);       maxi(best, big_x - x[i] + y[i] - small_y);     }     printf( %d  , 2 * best);     for (int i = 4; i <= n; ++i) {       printf( %d  , 2 * (big_x - small_x + big_y - small_y));     }     puts(  );   }   