#include <bits/stdc++.h>
using namespace std;
const int N = 23, S = 1 << N;
int n, m, g[S], f[S], c[S], ans = N, all, sol;
int main(int argc, char *argv[]) {
  cin >> n >> m;
  all = (1 << n) - 1;
  if (m == n * (n - 1) / 2) return cout << 0 << endl, 0;
  for (int i = 1; i <= (m); ++i) {
    int u, v;
    cin >> u >> v;
    --u, --v;
    g[1 << u] |= (1 << v);
    g[1 << v] |= (1 << u);
  }
  for (int i = 0; i <= (n - 1); ++i) g[1 << i] |= 1 << i;
  c[0] = 0;
  for (int s = 1; s <= ((1 << n) - 1); ++s) c[s] = c[s >> 1] + (s & 1);
  for (int i = 0; i <= (n - 1); ++i) f[1 << i] = 1;
  for (int s = 1; s <= ((1 << n) - 1); ++s)
    if (f[s]) {
      for (int j = 0; j <= (n - 1); ++j)
        if ((s >> j) & 1) g[s] |= g[1 << j];
      for (int j = 0; j <= (n - 1); ++j)
        if ((g[s] >> j) & 1) f[s | (1 << j)] = 1;
      if (g[s] == all)
        if (c[s] < ans) ans = c[s], sol = s;
    }
  cout << ans << endl;
  for (int i = 0; i <= (n - 1); ++i)
    if ((sol >> i) & 1) cout << i + 1 << " ";
}
