Valera has *n* counters numbered from 1 to *n*. Some of them are connected by wires, and each of the counters has a special button.

Initially, all the counters contain number 0. When you press a button on a certain counter, the value it has increases by one. Also, the values recorded in all the counters, directly connected to it by a wire, increase by one.

Valera and Ignat started having a dispute, the dispute is as follows. Ignat thought of a sequence of *n* integers *a*<sub class="lower-index">1</sub>, *a*<sub class="lower-index">2</sub>, ..., *a*<sub class="lower-index">*n*</sub>. Valera should choose some set of distinct counters and press buttons on each of them exactly once (on other counters the buttons won't be pressed). If after that there is a counter with the number *i*, which has value *a*<sub class="lower-index">*i*</sub>, then Valera loses the dispute, otherwise he wins the dispute.

Help Valera to determine on which counters he needs to press a button to win the dispute.
The first line contains two space-separated integers *n* and *m* (1 ≤ *n*, *m* ≤ 10<sup class="upper-index">5</sup>), that denote the number of counters Valera has and the number of pairs of counters connected by wires.

Each of the following *m* lines contains two space-separated integers *u*<sub class="lower-index">*i*</sub> and *v*<sub class="lower-index">*i*</sub> (1 ≤ *u*<sub class="lower-index">*i*</sub>, *v*<sub class="lower-index">*i*</sub> ≤ *n*, *u*<sub class="lower-index">*i*</sub> ≠ *v*<sub class="lower-index">*i*</sub>), that mean that counters with numbers *u*<sub class="lower-index">*i*</sub> and *v*<sub class="lower-index">*i*</sub> are connected by a wire. It is guaranteed that each pair of connected counters occurs exactly once in the input.

The last line contains *n* space-separated integers *a*<sub class="lower-index">1</sub>, *a*<sub class="lower-index">2</sub>, ..., *a*<sub class="lower-index">*n*</sub> (0 ≤ *a*<sub class="lower-index">*i*</sub> ≤ 10<sup class="upper-index">5</sup>), where *a*<sub class="lower-index">*i*</sub> is the value that Ignat choose for the *i*-th counter.
from collections import defaultdict, deque
n, m = [int(i) for i in input().split()]
G = defaultdict(set)
for i in range(m):
    u, v = [int(j) for j in input().split()]
    G[u-1].add(v-1)
    G[v-1].add(u-1)
A = [int(i) for i in input().split()]
B = [0 for i in range(n)]
q = deque([i for i in range(n) if A[i] == 0])
ans = []
while q:
    u = q.popleft()
    if B[u] != A[u]:
        continue
    ans.append(u+1)
    for v in G[u]: # update neighbor 
        B[v] += 1
        if B[v] == A[v]:
            q.append(v)
print(len(ans))
print(*ans)
 	 				 			 	 	 			 	    		 	