#include <bits/stdc++.h>
using namespace std;
struct point {
  long long int x, y;
  point() {}
  point(long long int xx, long long int yy) { x = xx, y = yy; }
};
point p[100000 + 5];
long long int area(point A, point B, point C) {
  long long int ar =
      fabs((A.x * (B.y - C.y) + B.x * (C.y - A.y) + C.x * (A.y - B.y)));
  return ar;
}
int main() {
  int n, i;
  scanf("%d", &n);
  for (i = 0; i < n; i++) scanf("%lld %lld", &p[i].x, &p[i].y);
  long long int mn = 1e19;
  int id;
  for (i = 1; i < n; i++) {
    long long int tmp = (p[0].x - p[i].x) * (p[0].x - p[i].x) +
                        (p[0].y - p[i].y) * (p[0].y - p[i].y);
    if (tmp < mn) {
      mn = tmp;
      id = i;
    }
  }
  mn = 1e19;
  int id1;
  for (i = 0; i < n; i++) {
    if (i == 0 || i == id) continue;
    long long int tmp = area(p[0], p[id], p[i]);
    if (tmp < mn && tmp) {
      id1 = i;
      mn = tmp;
    }
  }
  printf("%d %d %d\n", 1, id + 1, id1 + 1);
  return 0;
}
