#include <bits/stdc++.h>
using namespace std;
const int N = 55;
typedef pair<int, int> PII;
PII q[N];
int n, p[N];
int find(int x)
{
if (x != p[x]) p[x] = find(p[x]);
return p[x];
}
int get(int i, int j)
{
return abs(q[i].first - q[j].first) + abs(q[i].second - q[j].second);
}
bool check(int mid)
{
for (int i = 1; i <= n; i ++ ) p[i] = i;
for (int i = 1; i <= n; i ++ )
{
for (int j = 1; j < i; j ++ )
{
int dist = get(i, j);
if (2 * mid >= dist)
{
int pa = find(i), pb = find(j);
if (pa != pb) p[pa] = pb;
}
}
}
int cnt = 0;
for (int i = 1; i <= n; i ++ ) if (p[i] == i) cnt ++ ;
if (cnt == 1) return true;
else return false;
}
int main()
{
cin >> n;
for (int i = 1; i <= n; i ++ ) cin >> q[i].first >> q[i].second;
int l = 0, r = 1e9;
while (l < r)
{
int mid = l + r >> 1;
if (check(mid)) r = mid;
else l = mid + 1;
}
cout << r << endl;
return 0;
}