#include <bits/stdc++.h>
using namespace std;
const bool testcases = false;
const int64_t inf = LLONG_MAX;
int64_t seed;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
inline int64_t rnd(int64_t l = 0, int64_t r = INT_MAX) {
  return uniform_int_distribution<int64_t>(l, r)(rng);
}
inline bool in_range(int64_t a, int64_t l, int64_t r) {
  return (a >= l && a <= r);
}
template <typename H, typename... T>
void inp(H &head) {
  cin >> head;
}
template <typename H, typename... T>
void inp(H &head, T &...tail) {
  cin >> head;
  inp(tail...);
}
template <typename T>
bool isPrime(T n) {
  for (T i = 2; i * i <= n; i++)
    if (n % i == 0) return false;
  return n >= 2;
}
template <typename T>
inline istream &operator>>(istream &in, vector<T> &a) {
  for (T &x : a) in >> x;
  return in;
}
template <typename T, typename U>
inline istream &operator>>(istream &in, pair<T, U> &a) {
  in >> a.first >> a.second;
  return in;
}
void solve();
void fast_io();
int32_t main(int32_t argc, char **argv) {
  fast_io();
  int64_t TC = 1;
  if (testcases) cin >> TC;
  for (int64_t tc = 1; tc <= TC; tc++) solve(), 108;
  return 0;
}
void solve() {
  int64_t n;
  cin >> n;
  n <<= 1;
  char op;
  vector<pair<bool, int64_t>> operations(n);
  for (auto &p : operations) {
    cin >> op;
    if (op == '-') cin >> p.second;
    p.first = op == '-';
  }
  int64_t id = 0;
  vector<int64_t> ans(n / 2);
  stack<int64_t> st;
  for (const auto &p : operations) {
    if (p.first) {
      if (st.empty()) {
        cout << "NO" << '\n';
        return;
      }
      ans[st.top()] = p.second;
      st.pop();
      continue;
    }
    st.push(id);
    ++id;
  }
  id = 0;
  set<int64_t> sold;
  sold.insert(inf);
  for (const auto &p : operations) {
    if (p.first) {
      1729;
      if (*sold.begin() < p.second) {
        cout << "NO" << '\n';
        return;
      }
      sold.erase(sold.begin());
    } else
      sold.insert(ans[id++]);
  }
  cout << "YES" << '\n';
  for (int64_t res : ans) cout << res << " ";
  cout << '\n';
}
void fast_io() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
}
