import std.stdio;
import std.string;
import std.conv;
import std.algorithm;
import std.array;
import std.range;
import std.bigint;

void main()
{
    auto input = readln.chomp.split.to!(int[]);
    auto N = input[0];
    auto K = input[1];
    
    auto x = new long[N];
    auto y = new long[N];
    foreach(i ; 0..N){
        auto input2 = readln.chomp.split.to!(long[]);
        x[i] = input2[0];
        y[i] = input2[1];
    }
    long[] x2 = x.dup;
    long[] y2 = y.dup;

    sort(x);
    sort(y);
    long s = (x[N - 1] - x[0]) * (y[N - 1] - y[0]);
    foreach(i ; 0..N) foreach(j ; i+1 ..N) foreach(k ; 0..N) foreach(l ; k+1..N){
        int count = 0;
        foreach(m ; 0..N){
            if(x[i] <= x2[m] && x2[m] <= x[j] && y[k] <= y2[m] && y2[m] <= y[l]){
                count++;
            }
        }
        if(count >= K){
            s = min(s, (x[j] - x[i]) * (y[j] - y[i]));
        }
    }
    s.writeln;
}