Graph
The sequence is called a permutation, if it contains every integer from to .
The permutation of vertices is a topological sort of a directed graph, if for every directed edge from to , vertex comes before in this permutation.
The permutation is lexicographically smaller than the permutation , if there exists such that for every and .
Given a directed acyclic graph, add at most directed edges to it in such a way, that the resulting graph still has no cycles and the lexicographically minimal topological sort of the graph is maximum possible.
Input
The first line contains three integers and — the number of vertices and directed edges in the original graph, and the number of directed edges, that you are allowed to add.
Each of the following lines contains two integers , describing directed edge from to .
The graph has no cycles.
Output
The first line should contain integers — the lexicographically minimal topological sort of the modified graph. The second line should contain a single integer — the number of directed edges to add. The following lines of the output should contain description of added directed edges in the same format as in the input.