func_code_string: #include <bits/stdc++.h>   using namespace std;   void __print(int x) { cerr << x; }   void __print(long x) { cerr << x; }   void __print(long long x) { cerr << x; }   void __print(unsigned x) { cerr << x; }   void __print(unsigned long x) { cerr << x; }   void __print(unsigned long long x) { cerr << x; }   void __print(float x) { cerr << x; }   void __print(double x) { cerr << x; }   void __print(long double x) { cerr << x; }   void __print(char x) { cerr <<      << x <<     ; }   void __print(const char *x) { cerr <<     << x <<    ; }   void __print(const string &x) { cerr <<     << x <<    ; }   void __print(bool x) { cerr << (x ?  true  :  false ); }   template <typename T, typename V>   void __print(const pair<T, V> &x) {     cerr <<  { ;     __print(x.first);     cerr <<  , ;     __print(x.second);     cerr <<  } ;   }   template <typename T>   void __print(const T &x) {     int f = 0;     cerr <<  { ;     for (auto &i : x) cerr << (f++ ?  ,  :   ), __print(i);     cerr <<  } ;   }   void _print() { cerr <<  ] n ; }   template <typename T, typename... V>   void _print(T t, V... v) {     __print(t);     if (sizeof...(v)) cerr <<  ,  ;     _print(v...);   }   vector<long long> adj[200005];   void solve() {     long long n, m;     cin >> n >> m;     for (long long i = 0; i < m; i++) {       long long u, v;       cin >> u >> v;       adj[u].push_back(v);       adj[v].push_back(u);     }     vector<long long> cnt(n + 1);     vector<long long> a(n + 1);     queue<long long> q;     for (long long i = 1; i < n + 1; i++) {       cin >> a[i];       if (!a[i]) q.push(i);     }     vector<long long> ans;     vector<long long> vis(n + 1);     while (!q.empty()) {       long long p = q.front();       q.pop();       cnt[p]++;       ans.push_back(p);       for (auto x : adj[p]) {         cnt[x]++;         if (cnt[x] == a[x]) q.push(x);       }     }     cout << ans.size() <<   n ;     for (auto x : ans) cout << x <<    ;     cout <<   n ;   }   signed main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     long long t;     t = 1;     for (long long i = 0; i < t; i++) {       solve();     }   }   