#include <bits/stdc++.h>
using namespace std;
int main() {
  long long n, m;
  cin >> n >> m;
  vector<pair<long long, long long> > vp;
  vector<long long> v;
  bool used[n + 1];
  for (long long i = 1; i <= n; i++) used[i] = false;
  for (long long i = 0; i < m; i++) {
    char ch;
    long long num;
    cin >> ch >> num;
    if (ch == '-') {
      vp.push_back({-1, num});
      if (used[num] == false) v.push_back(num);
    } else
      vp.push_back({1, num});
    used[num] = true;
  }
  set<long long> s;
  vector<long long> ans;
  long long num;
  if (!v.empty()) {
    for (long long i = v.size() - 1; i >= 0; i--) {
      s.insert(v[i]);
    }
  }
  if (!v.empty()) {
    num = v[v.size() - 1];
  } else
    num = vp[0].second;
  long long f = 0;
  for (long long i = 0; i < m; i++) {
    if (vp[i].first == 1) s.insert(vp[i].second);
    if (vp[i].first == -1) s.erase(vp[i].second);
    if (!s.empty()) {
      if (s.find(num) == s.end()) f = 1;
    }
  }
  if (f == 0) ans.push_back(num);
  for (long long i = 1; i <= n; i++) {
    if (used[i] == false) ans.push_back(i);
  }
  sort(ans.begin(), ans.end());
  cout << ans.size() << endl;
  for (auto x : ans) cout << x << " ";
}
