Break

PROBLEM

Santa Claus has a set of fields for his reindeers. In addition to the fields, there is also a set of such roads, that each road can be used for travelling between exactly two fields. Right now, the roads are arranged in such a way that it is possible to travel from any field to any other field, in which case we say that all fields are connected. Santa is concerned that if a flood washes away a road, this may no longer be true. Any path whose removal means that all fields are no longer connected, is called essential. You are to write a program which, given information about the fields and roads, computes the number of essential roads.

Figure 1.

Figure 1 shows fields F1, F2, F3 and F4, and a set of roads. The only essential road is the road between fields F1 and F2, and, thus, the number of essential roads is 1.

INPUT

The name of the input file is break.in. The first line contains two integers: the number of Santa’s fields F, 1<=F<=100000, and the number of roads R, 1<=R<=150000. The fields are identified with integers from 1 to F. The next R lines each contain information about one road: integers a and b, where a and b are the numbers of such fields that the road represented by that input file line can be used for travelling between fields a and b. The order of a and b on the line is meaningless.

OUTPUT

The name of the output file is break.out. The first line of the output file contains one integer: the number of essential paths.

EXAMPLE INPUT AND OUTPUT

The following example input and output match the situation in Figure 1.

break.in
4 4
1 2
2 3
3 4
2 4

break.out
1