#include <bits/stdc++.h>
using namespace std;
struct pt {
  long long id;
  long double x, y;
} p;
long double angle(pt c) {
  long double agree = atan2(c.y, c.x);
  agree += 2 * 3.141592653589793238462643;
  return agree;
}
bool cmd(pt a, pt b) { return angle(a) < angle(b); }
pair<long long, long long> ans;
vector<pt> v;
long long n;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(NULL);
  cout.tie(NULL);
  long long i, j;
  cin >> n;
  for (i = 1; i <= n; i++) {
    long long xx, yy;
    cin >> xx >> yy;
    p.id = i;
    p.x = xx;
    p.y = yy;
    v.push_back(p);
  }
  sort(v.begin(), v.end(), cmd);
  ans.first = 0, ans.second = n - 1;
  long double fox =
      2 * 3.141592653589793238462643 - (angle(v[n - 1]) - angle(v[0]));
  for (i = 1; i < n; i++) {
    if (angle(v[i]) - angle(v[i - 1]) < fox) {
      ans.second = i;
      ans.first = i - 1;
      fox = angle(v[i]) - angle(v[i - 1]);
    }
  }
  cout << v[ans.second].id << " " << v[ans.first].id;
  return 0;
}
