Выборы 
Input file: 	ELECT.IN			
Output file: ELECT.OUT			Time limit: 1 sec.

Ослу I.A. надоело руководить одним маленьким осликом Иа-Иа, и поэтому он решил заняться политикой. 

И вот, выборы уже скоро... Предварительное исследование показало, что за Осла I.A. готовы голосовать все его родственники. К великому огорчению Осла I.A. больше никто голосовать за него не собирается. Тогда он разослал всем избирателям письмо, в которое включил список всех тех, кто собирается голосовать за него. Каждый избиратель, получив письмо, решает голосовать за Осла I.A., если в списке есть хоть один человек, которому он доверяет; если же в списке нет ни одного человека, которому он доверяет, то избиратель решает не голосовать за Осла I.A., независимо от того, что он решил раньше. Таким образом, некоторые избиратели, которые изначально не хотели голосовать за Осла I.A., могут теперь решить голосовать за него,  а некоторые из желавших проголосовать за Осла I.A. - наоборот отказаться от своего намерения. В результате этого у Осла I.A. формируется новый список, который он опять может разослать избирателям. 

Он может сколь угодно много раз повторять эту операцию, каждый раз рассылая текущий список. Осёл I.A. может остановить процесс в любой момент, рассчитывая, что все избиратели, которые решили голосовать за него после последней рассылки, так за него и проголосуют. 

Напишите программу, которая определит, на какое максимальное число голосов может рассчитывать Осёл I.A. . Будем считать, что Осёл I.A. не подтасовывает рассылаемые им списки.

Входные данные. В первой строке входного файла находятся два натуральных числа: N, 1<=N<=2000, и M, 1<=M<=200000. 
Каждая из следующих M строк содержит два номера избирателей, доверяющих друг другу: два различных числа (из диапазона от 1 до N), разделённые пробелом. Предполагается, что если избиратель А доверяет избирателю В, то и избиратель В доверяет избирателю А
Заключительная строка содержит N чисел – нулей и единиц. Единицы соответствуют избирателям, которые изначально собирались голосовать за Осла I.A, нули – тем, которые собирались сначала голосовать за других кандидатов. Соседние числа в строке разделены пробелом.

Выходные данные. В единственной строке следует выводить одно натуральное число – максимальное количество избирателей, которые могут проголосовать в итоге за Осла I.A. (если он, конечно, вовремя остановится).

Примеры 	ELECT.IN			ELECT.OUT	   	
7 6				4
1 2
1 3
1 4
4 5
5 6
2 5
1 0 0 0 0 0 1

ELECT.IN			ELECT.OUT		
3 0				0
0 0 0