**Compilation/Execution Result:**

Given a directed graph you need to complete the function **topoSort** which returns an array having the topologically sorted elements of the array and takes two arguments . The first argument is the Graph **graph **represented as adjacency list and the second is the number of vertices **N** .

**Note : **There can be multiple topological sorts of a Graph. The driver program that calls your function doesn't match your output element by element, but checks whether the output produced by your function is a valid topological sort or not.

**Input:**

The first line of input takes the no of test cases then T test cases follow . Each test case contains two lines . The first line of each test case contains two integers E and N representing no of edges and the no of vertices . Then in the next line are E pairs of integers u v representing an edge from u to v in the graph.

**Output:**

For each test case output will be 1 if the topological sort is done correctly else it will be 0 .

**Constraints:**

1<=T<=50

1<=E,N<=50

0<=u,v

**Example:**

**Input**

1

6 6

5 0 5 2 2 3 4 0 4 1 1 3

**Output**

1

The output 1 denotes that the order is valid. So if you have implemented your function correctly, then output would be 1 for all test cases.

**Note:**The **Input/Ouput** format and **Example** given are used for system's internal purpose, and should be used by a user for **Expected Output** only. As it is a function problem, hence a user should not read any input from stdin/console. The task is to complete the function specified, and not to write the full code.

Author: Shubham Joshi 1

surbhi_7 | 148 |

Rajat Thakur 2 | 140 |

Ibrahim Nash | 120 |

aksh1996aksh | 117 |

Anupam Prakash 1 | 117 |

Ibrahim Nash | 634 |

ashrepos | 534 |

RealHorror | 395 |

shi143din | 385 |

shaktiman_shaktiman_shaktiman | 363 |

akhayrutdinov | 4052 |

sanjay05 | 3423 |

Quandray | 2446 |

Michael Riegger | 2228 |

Jasleen Kaur 2 | 2012 |