#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
using namespace std;
long long n, x[100010], y[100010], a[100010], nx, ny, G, tmp;
long long dis(long long x, long long y) { return x * x + y * y; }
int main() {
  srand(time(NULL));
  cin >> n, G = 1500000LL * 1500000;
  for (int i = 0; i < n; i++) {
    cin >> x[i] >> y[i];
    if (dis(nx + x[i], ny + y[i]) < dis(nx - x[i], ny - y[i]))
      nx += x[i], ny += y[i], a[i] = 1;
    else
      nx -= x[i], ny -= y[i], a[i] = -1;
  }
  while (dis(nx, ny) > G) {
    tmp = rand() % n;
    if (dis(nx - x[tmp] * a[tmp] * 2, ny - y[tmp] * a[tmp] * 2) < dis(nx, ny))
      nx -= x[tmp] * a[tmp] * 2, ny -= y[tmp] * a[tmp] * 2, a[tmp] = -a[tmp];
  }
  for (int i = 0; i < n; i++) cout << a[i] << ' ';
  cout << '\n';
}
