#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100100;
int N, M;
int app[MAXN];
char type[MAXN];
int P[MAXN];
bool check(int leader) {
  set<int> users;
  users.insert(leader);
  for (int i = 0; i < M; i++) {
    if (type[i] == '+')
      users.insert(P[i]);
    else
      users.erase(P[i]);
    if (!users.empty() && users.find(leader) == users.end()) return false;
  }
  return true;
}
int main() {
  cin >> N >> M;
  for (int i = 0; i < M; i++) cin >> type[i] >> P[i];
  int offp = 0;
  for (int i = 0; i < M; i++) {
    if (type[i] == '-' && !app[P[i]]) offp = P[i];
    app[P[i]] = true;
  }
  if (offp != 0) {
    if (check(offp)) app[offp] = false;
  } else {
    if (check(P[0])) app[P[0]] = false;
  }
  int total = 0;
  for (int i = 1; i <= N; i++) total += !app[i];
  cout << total << "\n";
  for (int i = 1; i <= N; i++)
    if (!app[i]) cout << i << " ";
  return 0;
}
