import std.stdio;
import std.string;
import std.conv;
import std.algorithm;
import std.container;
import std.array;
import std.math;
import std.range;
import std.typecons;
import std.ascii;
import std.format;

void main()
{
  auto input = readln.chomp.split.map!(to!int);
  auto n = input[0];
  auto k = input[1];
  long[] xs;
  long[] ys;
  bool[long] xset;
  bool[long] yset;
  foreach (i; 0..n) {
    auto xy = readln.chomp.split.map!(to!int);
    xs ~= xy.front;
    ys ~= xy.back;
    xset[xy.front] = true;
    yset[xy.back] = true;
  }
  long[] xlist = xset.keys;
  long[] ylist = yset.keys;
  std.algorithm.sort(xlist);
  std.algorithm.sort(ylist);
  long ans = long.max;
  foreach (xmin; xlist) {
    foreach (ymin; ylist) {
      foreach (xmax; xlist) {
        if (xmax < xmin) {
          continue;
        }
        foreach (ymax; ylist) {
          if (ymax < ymin) {
            continue;
          }
          int cnt = 0;
          foreach (i; 0..n) {
            long x = xs[i];
            long y = ys[i];
            cnt += xmin <= x && x <= xmax
                && ymin <= y && y <= ymax;
          }
          if (cnt >= k) {
            ans = min(ans, (xmax - xmin) * (ymax - ymin));
          }
        }
      }
    }
  }
  ans.writeln;
}
