Given an array** A[] **of integers, **sort **the array according to **frequency **of elements. That is elements that have higher frequency come first. If frequencies of two elements are same, then smaller number comes first.

**Input:**

The first line of input contains an integer T denoting the number of test cases. The description of T test cases follows. The first line of each test case contains a single integer N denoting the size of array. The second line contains N space-separated integers A_{1}, A_{2}, ..., A_{N} denoting the elements of the array.

**Output:**

For each testcase, in a new line, print each sorted array in a seperate line. For each array its numbers should be seperated by space.

**Constraints:**

1 ≤ T ≤ 70

30 ≤ N ≤ 130

1 ≤ A_{i} ≤ 60

**Example:**

**Input:**

2

5

5 5 4 6 4

5

9 9 9 2 5

**Output:**

4 4 5 5 6

9 9 9 2 5

**Explanation:**

**Testcase1:** The highest frequency here is 2. Both 5 and 4 have that frequency. Now since the frequencies are same then smaller element comes first. So 4 4 comes first then comes 5 5. Finally comes 6.

The output is **4 4 5 5 6.**

**Testcase2:** The highest frequency here is 3. The element 9 has the highest frequency. So 9 9 9 comes first. Now both 2 and 5 have same frequency. So we print smaller element first.

The output is **9 9 9 2 5.**

lakshmi_pandey | 72 |

abbatta7 | 68 |

Ashish Kumar Vaishy | 62 |

aman19 | 58 |

Kumar Gaurav Singh | 58 |

saumitra13325 | 612 |

ashujack | 551 |

lakshmi_pandey | 544 |

aman19 | 538 |

piyushmittal25 | 514 |

blackshadows | 5249 |

akhayrutdinov | 5111 |

Ibrahim Nash | 5087 |

Quandray | 4354 |

sanjay05 | 3668 |

Login to report an issue on this page.