#include <bits/stdc++.h>
using namespace std;
using ll=long long;
using ld=long double;
ld pie=3.141592653589793;
ll inf=200000000000000;
ll mod=998244353;
int main(){
    ll n,k;
    cin >> n >> k;
    ll sx,sy,gx,gy;
    cin >> sx >> sy >> gx >> gy;
    vector<ll>x(n),y(n);
    for (ll i = 0; i < n; i++)
    {
        cin >> x[i] >> y[i];
    }
    x.push_back(sx);
    x.push_back(gx);
    y.push_back(sy);
    y.push_back(gy);
    ll left=0,right=inf;
    while (right-left>1)
    {
        ll mid=(right+left)/2;
        queue<ll>que;
        que.push(n);
        vector<ll>memo(n+2,inf);
        memo[n]=0;
        while (!que.empty())
        {
            ll v=que.front();
            que.pop();
            for (ll i = 0; i < n+2; i++)
            {
                ll z=(abs(x[v]-x[i])+abs(y[v]-y[i]));
                if (z==0)
                {
                    continue;
                }
                ll zz=z/(mid);
                zz--;
                if (z%(mid)!=0)
                {
                    zz++;
                }
                if (memo[i]>memo[v]+zz)
                {
                    memo[i]=memo[v]+zz;
                    que.push(i);
                }
            }
        }
        if (memo[n+1]>k)
        {
            left=mid;
        }else{
            right=mid;
        }
    }
    cout << right << endl;
}