#ECP. Critical Edges
Critical Edges
This time I will not bore you with a long and boring sentence. Give a connected graph, you must find all the edges that are critical, in other words you must find the edges which when removed divide the graph.
Input
The first line contains a integer NC (1 ≤ NC ≤ 200), the number of test cases. Then follow NC test cases.
Each case begins with two integers N (1 ≤ N ≤ 700) and M (N-1 ≤ M ≤ N * (N-1) / 2), the number of nodes and the number of edges respectively. Then follow M lines, each with a pair of integers a b (1 ≤ a, b ≤ N) indicate that between the node a and the node b there is a edge.
Output
For each test case print the list of ways to protect the following format:
Caso #n
t
x1 y2
x2 y2
...
xt yt
Where n is the case number (starting from 1), t is the total of critical edges, list elements xi yi indicates, for each line, there is a critical edge between the node xi and node yi (1 ≤ xi <yi ≤ N). In addition, the list should be sorted in non-decreasing order first by xi and then by yi. Also xi < yi must hold.</y</p>
If there isn't any critical edge print: "Sin bloqueos" (quotes for clarity). Output:
Caso #1
4
1 2
2 3
2 4
4 5
Caso #2
2
3 4
4 5
Caso #3
Sin bloqueos
Example
Input:
3
5 4
1 2
4 2
2 3
4 5
5 5
1 2
1 3
3 2
3 4
5 4
4 6
1 3
1 4
2 1
3 2
4 2
4 3
</p>