#include <bits/stdc++.h>
using namespace std;
#pragma comment(linker, "/STACK:146777216")
bool waren[100001] = {0};
bool mach[100001] = {0};
int mensch[100001];
vector<int> pidary;
int mog[1000001] = {1};
vector<int> wig;
int main() {
  int n, k;
  cin >> n >> k;
  bool ck = 0;
  for (int i = 0; i < k; i++) {
    char a;
    int b;
    cin >> a >> b;
    if (a == '+')
      mach[i] = 1;
    else {
      if (!waren[b - 1]) {
        ck = 1;
        pidary.push_back(b - 1);
      }
      mach[i] = 0;
    }
    mensch[i] = b - 1;
    waren[b - 1] = 1;
  }
  for (int i = 0; i < n; i++)
    if (!waren[i]) {
      wig.push_back(i);
      mog[i] = 0;
    } else
      mog[i] = 1;
  set<int> her;
  for (int i = 0; i < pidary.size(); i++) {
    her.insert(pidary[i]);
  }
  int ls = -1;
  for (int i = 0; i < k; i++) {
    if (mach[i] == 1) {
      if (her.size() >= 1) mog[mensch[i]] = 0;
      if (ls != -1 && mensch[i] != ls) {
        mog[ls] = 0;
        mog[mensch[i]] = 0;
      }
      ls = -1;
      her.insert(mensch[i]);
    } else {
      if (her.size() > 1)
        mog[mensch[i]] = 0;
      else
        ls = mensch[i];
      her.erase(mensch[i]);
    }
  }
  for (int i = 0; i < n; i++)
    if (mog[i]) wig.push_back(i);
  sort(wig.begin(), wig.end());
  cout << wig.size() << "\n";
  for (int i = 0; i < wig.size(); i++) cout << wig[i] + 1 << ' ';
  return 0;
}
