#include <bits/stdc++.h>
using namespace std;
int cond = 1;
pair<int, int> t[201013];
int main() {
  int n, k;
  scanf("%d %d", &n, &k);
  if (n <= k) {
    puts("-1");
    return 0;
  }
  for (int i = 0; i < (n); i++) scanf("%d %d", &t[i].first, &t[i].second);
  sort(t, t + n);
  set<pair<int, int> > ret;
  for (int a = 0; a < (k + 1); a++)
    for (int b = 0; b < (k + 1 - a); b++) {
      int xx = t[a].first + t[n - 1 - b].first;
      int yy = t[a].second + t[n - 1 - b].second;
      int kk = k - a - b;
      int i = a + 1, j = n - 2 - b;
      while (i <= j && kk >= 0) {
        if (t[i].first + t[j].first == xx && t[i].second + t[j].second == yy) {
          i++;
          j--;
          continue;
        }
        kk--;
        if (t[i].first + t[j].first != xx) {
          if (t[i].first + t[j].first < xx)
            i++;
          else
            j--;
        } else if (t[i].second + t[j].second < yy)
          i++;
        else
          j--;
      }
      if (kk >= 0) ret.insert(make_pair(xx, yy));
    }
  printf("%d\n", ((int)((ret).size())));
  for (typeof((ret).begin()) i = ((ret).begin()); i != (ret).end(); ++i)
    printf("%.1lf %.1lf\n", i->first / 2., i->second / 2.);
  return 0;
}
