#include <bits/stdc++.h>   using namespace std;   const long long mod = 1e9 + 7;   const int maxSize = 1 << 16;   map<string, int> t;   int a[maxSize];   vector<string> s;   vector<vector<int> > v;   int main() {     int n, k;     scanf( %d%d , &n, &k);     v.resize(n);     s.resize(n);     for (int i = 0; i < n; i++) {       cin >> s[i];       t[s[i]] = i;     }     for (int i = 0; i < k; i++) {       string s1, s2;       cin >> s1 >> s2;       int x, y;       x = t[s1], y = t[s2];       v[x].push_back(y);       v[y].push_back(x);     }     int res = 0, ans = 0;     for (int i = 0; i < maxSize; i++) {       int cnt = 0;       for (int j = 0; j < n; j++)         if (i & (1 << j)) cnt++;       for (int j = 0; j < n; j++)         if (i & (1 << j))           for (int x = 0; x < v[j].size(); x++)             if (i & (1 << v[j][x])) {               cnt = 0;               break;             }       if (cnt > ans) res = i, ans = cnt;     }     printf( %d n , ans);     set<string> st;     for (int i = 0; i < n; i++)       if (res & (1 << i)) st.insert(s[i]);     for (auto e : st) cout << e << endl;     return 0;   }   