#include <cstdio>
#include <algorithm>
#define inf 1e18+2
using namespace std;
typedef long long ll;
inline ll rd()
{
	ll x=0,p=1;
	char a=getchar();
	while((a<48||a>57)&&a!='-')a=getchar();
	if(a=='-')p=-p,a=getchar();
	while(a>47&&a<58)
	{
		x=(x<<1)+(x<<3)+(a&15);
		a=getchar();
	}
	return x*p;
}
inline void write(ll x)
{
	if(x<0)x=-x,putchar('-');
	if(x>9)write(x/10);
	putchar(x%10+48);
}
inline void print(ll x,int type=0)
{
	write(x);
	if(!type)putchar(' ');
	else puts("");
}
ll n,lmax,lmin,rmax,rmin;
ll x,y,ans;
int main()
{
	n=rd();
	x=rd();y=rd();
	lmax=lmin=x;rmax=rmin=y;
	for(int i=2;i<=n;i++)
	{
		x=rd();y=rd();
		ll a,b;
		if(x>lmax)
		{
			if(y>rmax)a=(x-lmin)*(y-rmin);
			else if(y<rmin)a=(x-lmin)*(rmax-y);
			else a=(x-lmin)*(rmax-rmin);
		}
		else if(x<lmin)
		{
			if(y>rmax)a=(lmax-x)*(y-rmin);
			else if(y<rmin)a=(lmax-x)*(rmax-y);
			else a=(lmax-x)*(rmax-rmin);
		}
		else
		{
			if(y>rmax)a=(lmax-lmin)*(y-rmin);
			else if(y<rmin)a=(lmax-lmin)*(rmax-y);
			else a=(lmax-lmin)*(rmax-rmin);
		}
		swap(x,y);
		if(x>lmax)
		{
			if(y>rmax)b=(x-lmin)*(y-rmin);
			else if(y<rmin)b=(x-lmin)*(rmax-y);
			else b=(x-lmin)*(rmax-rmin);
		}
		else if(x<lmin)
		{
			if(y>rmax)b=(lmax-x)*(y-rmin);
			else if(y<rmin)b=(lmax-x)*(rmax-y);
			else b=(lmax-x)*(rmax-rmin);
		}
		else
		{
			if(y>rmax)b=(lmax-lmin)*(y-rmin);
			else if(y<rmin)b=(lmax-lmin)*(rmax-y);
			else b=(lmax-lmin)*(rmax-rmin);
		}
		swap(x,y);
		if(a<b)
		{
			lmax=max(lmax,x);lmin=min(lmin,x);
			rmax=max(rmax,y);rmin=min(rmin,y);
		}
		else
		{
			lmax=max(lmax,y);lmin=min(lmin,y);
			rmax=max(rmax,x);rmin=min(rmin,x);
		}
	}
	print((lmax-lmin)*(rmax-rmin),1);
	return 0;
}