#include <bits/stdc++.h>
char t[2], op[200000];
int n, x[200000], s[200000], tp = 0;
int main() {
  scanf("%d", &n);
  for (int i = 0; i < 2 * n; i++) {
    scanf("%s", t);
    op[i] = t[0];
    if (op[i] == '-') scanf("%d", x + i);
  }
  for (int i = 2 * n - 1; i >= 0; i--) {
    if (op[i] == '-') {
      if (!tp || s[tp - 1] > x[i]) {
        s[tp++] = x[i];
      } else {
        puts("NO");
        return 0;
      }
    } else {
      if (!tp) {
        puts("NO");
        return 0;
      }
      x[i] = s[--tp];
    }
  }
  puts("YES");
  for (int i = 0; i < 2 * n; i++)
    if (op[i] == '+') printf("%d ", x[i]);
  puts("");
}
