#include<iostream>
#include<cstdlib>
#include<algorithm>
using namespace std;
int uma,umi,vma,vmi;

int da(int u,int v){
    int l1,l2;
    l1 = max(uma-u,vma-v);
    l2 = max(u-umi,v-vmi);
    return min(l1,l2);
}

int db(int u,int v){
    int l1,l2;
    l1 = max(uma-u,v-vmi);
    l2 = max(u-umi,vma-v);
    return min(l1,l2);
}

int main(){
    int n,x,y,a,b;
    int u[100010],v[100010];
    
    cin >> n;
    for(int i=0;i<n;i++){
        cin >> x >> y;
        u[i] = x+y;
        v[i] = x-y;
        if(i == 0){
            uma = u[i];
            umi = u[i];
            vma = v[i];
            vmi = v[i];
        }
        uma = max(uma,u[i]);
        umi = min(umi,u[i]);
        vma = max(vma,v[i]);
        vmi = min(vmi,v[i]);
    }
    
    a = 0;
    b = 0;
    for(int i=0;i<n;i++){
        a = max(a,da(u[i],v[i]));
        b = max(b,db(u[i],v[i]));
    }
    cout << min(a,b) << endl;
    
    return(0);
}
