#include <bits/stdc++.h>
using namespace std;
int const N = 15050;
pair<long long, long long> a[N], h[N];
int t = 0;
bool cmp(pair<long long, long long> p1, pair<long long, long long> p2) {
  pair<long long, long long> v1 = make_pair(p1.first - a[0].first,
                                            p1.second - a[0].second),
                             v2 = make_pair(p2.first - a[0].first,
                                            p2.second - a[0].second);
  return (v1.first * v2.second - v1.second * v2.first >= 0);
}
bool v_p(pair<long long, long long> p1, pair<long long, long long> p2,
         pair<long long, long long> p3) {
  if ((p2.first - p1.first) * (p3.second - p2.second) -
          (p2.second - p1.second) * (p3.first - p2.first) <
      0)
    return true;
  else
    return false;
}
long long get_area(int it1, int it2, int it3) {
  return abs((h[it1].first - h[it2].first) * (h[it3].second - h[it2].second) -
             (h[it1].second - h[it2].second) * (h[it3].first - h[it2].first));
}
int main() {
  int n;
  long long S;
  cin >> n >> S;
  for (int i = 0; i < n; ++i) {
    long long x, y;
    cin >> x >> y;
    a[i] = make_pair(x, y);
    if (a[i] < a[t]) {
      t = i;
    }
  }
  if (t != 0) swap(a[t], a[0]);
  sort(a + 1, a + n, cmp);
  h[0] = a[0];
  h[1] = a[1];
  int ind = 1;
  for (int i = 2; i < n; ++i) {
    while (ind >= 1 && v_p(h[ind - 1], h[ind], a[i])) ind--;
    ind++;
    h[ind] = a[i];
  }
  ind++;
  for (int i = ind; i < 2 * ind; ++i) {
    h[i] = h[i % ind];
  }
  long long ans_area = 0;
  int ind1, ind2, ind3;
  for (int i = 0; i < ind; ++i) {
    int k = i + 2;
    for (int j = i + 1; j < i + ind; ++j) {
      long long prev_area = get_area(i, j, k);
      long long cur_area;
      while (k + 1 < i + ind) {
        cur_area = get_area(i, j, k + 1);
        if (cur_area <= prev_area) break;
        k++;
        prev_area = cur_area;
      }
      if (prev_area > ans_area) {
        ans_area = prev_area;
        ind1 = i;
        ind2 = j;
        ind3 = k;
      }
    }
  }
  long long x1 = h[ind1].first + h[ind2].first - h[ind3].first,
            y1 = h[ind1].second + h[ind2].second - h[ind3].second;
  long long x2 = h[ind1].first + h[ind3].first - h[ind2].first,
            y2 = h[ind1].second + h[ind3].second - h[ind2].second;
  long long x3 = h[ind3].first + h[ind2].first - h[ind1].first,
            y3 = h[ind3].second + h[ind2].second - h[ind1].second;
  cout << x1 << " " << y1 << endl;
  cout << x2 << " " << y2 << endl;
  cout << x3 << " " << y3 << endl;
  return 0;
}
