#include <bits/stdc++.h>
using namespace std;
inline long long Area(pair<int, int> a, pair<int, int> b, pair<int, int> c) {
  return abs((long long)(b.first - a.first) * (c.second - a.second) -
             (long long)(b.second - a.second) * (c.first - a.first));
}
const int MAXN = 5000 + 7;
pair<int, int> p[MAXN];
int main() {
  int n;
  long long s;
  scanf("%d %lld", &n, &s);
  for (int i = 0; i < n; ++i) {
    scanf("%d %d", &p[i].first, &p[i].second);
  }
  sort(p, p + n);
  int a = 0, b = 1, c = 2;
  long long ss = Area(p[a], p[b], p[c]);
  while (true) {
    bool check = false;
    for (int i = 0; i < n; ++i) {
      long long tt = Area(p[a], p[b], p[i]);
      if (tt > ss) {
        ss = tt;
        c = i;
        check = true;
      }
    }
    for (int i = 0; i < n; ++i) {
      long long tt = Area(p[a], p[c], p[i]);
      if (tt > ss) {
        ss = tt;
        b = i;
        check = true;
      }
    }
    for (int i = 0; i < n; ++i) {
      long long tt = Area(p[b], p[c], p[i]);
      if (tt > ss) {
        ss = tt;
        a = i;
        check = true;
      }
    }
    if (!check) {
      break;
    }
  }
  printf("%d %d\n", p[b].first + p[c].first - p[a].first,
         p[b].second + p[c].second - p[a].second);
  printf("%d %d\n", p[b].first + p[a].first - p[c].first,
         p[b].second + p[a].second - p[c].second);
  printf("%d %d\n", p[a].first + p[c].first - p[b].first,
         p[a].second + p[c].second - p[b].second);
  return 0;
}
