#include <bits/stdc++.h>
using namespace std;
pair<long double, int> v[100005];
int n;
long double minn = 2 * 3.14159265358979323846264338327950288419716939937510 + 1;
int minPos;
int main() {
  cin >> n;
  for (int i = 1; i <= n; i++) {
    int x, y;
    cin >> x >> y;
    long double angle = atan2l(y, x);
    v[i] = {
        angle >= 0
            ? angle
            : angle + 2 * 3.14159265358979323846264338327950288419716939937510,
        i};
  }
  sort(v + 1, v + n + 1);
  for (int i = 1; i < n; i++) {
    if (v[i + 1].first - v[i].first < minn) {
      minn = v[i + 1].first - v[i].first;
      minPos = i;
    }
  }
  if (2 * 3.14159265358979323846264338327950288419716939937510 - v[n].first +
          v[1].first <
      minn) {
    minn = 2 * 3.14159265358979323846264338327950288419716939937510 -
           v[n].first + v[1].first;
    minPos = n;
  }
  cout << v[minPos].second << ' ' << v[(minPos == n) ? 1 : (minPos + 1)].second;
}
