#include <bits/stdc++.h>
using namespace std;
const int maxn = 100001;
struct st {
  int y;
  long double x;
};
bool comp(st a, st b) { return a.x < b.x || (a.x == b.x && a.y > b.y); }
st w[maxn];
int main() {
  int n, x, y;
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> x >> y;
    long double alfa = atan2l(x, y);
    if (alfa < 0) alfa += 2 * M_PI;
    w[i].x = alfa;
    w[i].y = i + 1;
  }
  sort(w, w + n, comp);
  long double z = w[1].x - w[0].x;
  int l = w[0].y, r = w[1].y;
  for (int i = 2; i < n; i++) {
    if (w[i].x - w[i - 1].x < z) {
      z = w[i].x - w[i - 1].x;
      l = w[i].y;
      r = w[i - 1].y;
    }
  }
  long double g = w[n - 1].x - w[0].x;
  long double u = 2 * M_PI - g;
  if (g < z || u < z) {
    l = w[n - 1].y;
    r = w[0].y;
  }
  cout << l << " " << r;
}
