A **graph** is a collection of nodes, called **vertices**, connected to each other in some fashion by **edges**. A graph is called **connected** if it is possible to find a path along edges from every point to every other point.

Below are two graphs:

The one on the left is *connected*, while the one on the right is *not connected* (there is no path from node 1 to node 3).

An edge of a graph is called a **bridge** if by removing that edge the graph is no longer connected.

Edge 1-2 in the following graph is a bridge, since by removing it, the graph is no longer connected (no path from node 1 to any other node):

Edge 2-3 however, is not a bridge:

You are tasked with finding the number of edges in a graph that are bridges. You will be given 5 connected graphs, and you will output 5 single integers for the number of bridges found in the graphs.

The input file is **DATA5.txt**. The first line will contain a single integer N, the number of vertices. 1 <= N <= 100. Vertices will be numbered from 1 to N. The second line will contain a single integer M, the number of edges. 0 <= M <= 1000. This is followed by M lines, each describing an edge. An edge is described by two integers separated by a space. All edges are valid. This format will be repeated 5 times (that is, the line after the last edge of the 1st graph will be a single integer describing the number of vertices in the 2nd graph).

The output file **OUT5.txt** will contain 5 lines, a single integer per line -- the number of bridges in the described graph.

6 7 1 2 1 3 1 4 1 5 3 5 6 2 6 1

1

6 - There are 6 vertices, numbered 1 2 3 4 5 6 7 - There are 7 edges 1 2 - Vertex 1 is connected to vertex 2 1 3 - Vertex 1 is connected to vertex 3 1 4 - Vertex 1 is connected to vertex 4 1 5 - Vertex 1 is connected to vertex 5 3 5 - Vertex 3 is connected to vertex 5 6 2 - Vertex 6 is connected to vertex 2 6 1 - Vertex 6 is connected to vertex 1

The only bridge is the edge 1-4.