#include <bits/stdc++.h>
using namespace std;
struct node {
  int x, y, ind;
};
bool comp(struct node a, struct node b) {
  if (a.x == b.x) {
    return a.y < b.y;
  }
  return a.x < b.x;
}
vector<node> ans;
int main() {
  ios_base::sync_with_stdio(0);
  long long int i, j, n, m, k, l, u, v;
  cin >> n;
  for (i = 0; i < n; i++) {
    cin >> u >> v;
    node temp;
    temp.ind = i + 1;
    temp.x = u;
    temp.y = v;
    ans.push_back(temp);
  }
  sort(ans.begin(), ans.end(), comp);
  for (i = 0; i < n - 2; i++) {
    long long int x1 = ans[i].x, y1 = ans[i].y, x2 = ans[i + 1].x,
                  y2 = ans[i + 1].y, x3 = ans[i + 2].x, y3 = ans[i + 2].y;
    if ((y3 - y1) * (x2 - x1) != (y2 - y1) * (x3 - x1)) {
      cout << ans[i].ind << " " << ans[i + 1].ind << " " << ans[i + 2].ind
           << "\n";
      return 0;
    }
  }
  return 0;
}
