#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10;
int n;
long double x, y;
vector<pair<long double, int> > ans;
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%Lf %Lf", &x, &y);
    pair<long double, int> a;
    a.first = atan2(y, x);
    a.second = i;
    ans.push_back(a);
  }
  sort(ans.begin(), ans.end());
  long double minn = ans[ans.size() - 1].first - ans[0].first, zz;
  if (minn > acos(-1)) minn = 2 * acos(-1) - minn;
  int ans1 = ans[ans.size() - 1].second, ans2 = ans[0].second;
  for (int i = 0; i < ans.size() - 1; i++) {
    zz = ans[i + 1].first - ans[i].first;
    if (zz < minn) {
      minn = zz;
      ans1 = ans[i].second;
      ans2 = ans[i + 1].second;
    }
  }
  printf("%d %d\n", ans1, ans2);
  return 0;
}
