#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> e[10010];
int cnt = 0;
int low[10010];
int pre[10010];
vector<int> sep;
void dfs(int u, int par) {
int child = 0;
pre[u] = ++cnt;
low[u] = cnt;
int flag = 0;
for(auto &v : e[u]) {
if(v == par) continue;
if(pre[v] == 0) {
child++;
dfs(v, u);
if(low[u] > low[v]) low[u] = low[v];
if(pre[u] <= low[v]) flag = 1;
}
else {
if(pre[v] < low[u]) low[u] = pre[v];
}
}
if(par != -1 && flag) sep.push_back(u);
if(par == -1 && child >= 2) sep.push_back(u);
}
int main() {
int n, m;
scanf("%d %d", &n, &m);
for(int i = 0; i < m; i++) {
int x, y;
scanf("%d %d", &x, &y);
e[x].push_back(y);
e[y].push_back(x);
}
for(int i = 1; i <= n; i++) {
if(pre[i]) continue;
dfs(i, -1);
}
printf("%d\n", sep.size());
sort(sep.begin(), sep.end());
for(auto &v : sep) printf("%d ", v);
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPGFsZ29yaXRobT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2ZWN0b3I8aW50PiBlWzEwMDEwXTsKCmludCBjbnQgPSAwOwppbnQgbG93WzEwMDEwXTsKaW50IHByZVsxMDAxMF07Cgp2ZWN0b3I8aW50PiBzZXA7Cgp2b2lkIGRmcyhpbnQgdSwgaW50IHBhcikgewoJaW50IGNoaWxkID0gMDsKCXByZVt1XSA9ICsrY250OwoJbG93W3VdID0gY250OwoJaW50IGZsYWcgPSAwOwoJZm9yKGF1dG8gJnYgOiBlW3VdKSB7CgkJaWYodiA9PSBwYXIpIGNvbnRpbnVlOwoJCWlmKHByZVt2XSA9PSAwKSB7CgkJCWNoaWxkKys7CgkJCWRmcyh2LCB1KTsKCQkJaWYobG93W3VdID4gbG93W3ZdKSBsb3dbdV0gPSBsb3dbdl07CgkJCWlmKHByZVt1XSA8PSBsb3dbdl0pIGZsYWcgPSAxOwoJCX0KCQllbHNlIHsKCQkJaWYocHJlW3ZdIDwgbG93W3VdKSBsb3dbdV0gPSBwcmVbdl07CgkJfQoJfQoJCglpZihwYXIgIT0gLTEgJiYgZmxhZykgc2VwLnB1c2hfYmFjayh1KTsKCWlmKHBhciA9PSAtMSAmJiBjaGlsZCA+PSAyKSBzZXAucHVzaF9iYWNrKHUpOwp9CgppbnQgbWFpbigpIHsKCWludCBuLCBtOwoJc2NhbmYoIiVkICVkIiwgJm4sICZtKTsKCWZvcihpbnQgaSA9IDA7IGkgPCBtOyBpKyspIHsKCQlpbnQgeCwgeTsKCQlzY2FuZigiJWQgJWQiLCAmeCwgJnkpOwoJCWVbeF0ucHVzaF9iYWNrKHkpOwoJCWVbeV0ucHVzaF9iYWNrKHgpOwoJfQoJZm9yKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKCQlpZihwcmVbaV0pIGNvbnRpbnVlOwoJCWRmcyhpLCAtMSk7Cgl9CglwcmludGYoIiVkXG4iLCBzZXAuc2l6ZSgpKTsKCXNvcnQoc2VwLmJlZ2luKCksIHNlcC5lbmQoKSk7Cglmb3IoYXV0byAmdiA6IHNlcCkgcHJpbnRmKCIlZCAiLCB2KTsKCXJldHVybiAwOwp9