#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n;
  cin >> n;
  long long x, a;
  vector<pair<int, int>> po;
  vector<pair<int, int>> ne;
  while (n--) {
    cin >> x >> a;
    if (x < 0) {
      x = abs(x);
      ne.push_back(make_pair(x, a));
    } else {
      po.push_back(make_pair(x, a));
    }
  }
  long long ans = 0;
  sort(ne.begin(), ne.end());
  sort(po.begin(), po.end());
  int neg = ne.size();
  int pos = po.size();
  if (neg == 0) {
    cout << po[0].second;
  } else if (pos == 0) {
    cout << ne[0].second;
  } else if (abs(neg - pos) <= 1) {
    for (int i = 0; i < po.size(); i++) {
      ans += po[i].second;
    }
    for (int i = 0; i < ne.size(); i++) {
      ans += ne[i].second;
    }
    cout << ans;
  } else {
    if (neg > pos) {
      for (int i = 0; i < pos; i++) {
        ans += po[i].second;
      }
      for (int i = 0; i <= pos; i++) {
        ans += ne[i].second;
      }
    } else {
      for (int i = 0; i <= neg; i++) {
        ans += po[i].second;
      }
      for (int i = 0; i < neg; i++) {
        ans += ne[i].second;
      }
    }
    cout << ans;
  }
}
