AT_arc209_d [ARC209D] A_A_i

Description

You are given a sequence $ A = (A_1, A_2, \ldots, A_N) $ of length $ N $ . Each element is either an integer between $ 1 $ and $ N $ (inclusive) or $ -1 $ . Snuke has decided to create a new sequence using this sequence $ A $ . First, replace all $ -1 $ s in this sequence $ A $ with integers between $ 1 $ and $ N $ (inclusive). Next, create a sequence $ B = (B_1, B_2, \ldots, B_N) $ of length $ N $ according to the following formula: - $ B_i=A_{A_i} $ Find the lexicographically smallest possible sequence $ B $ . You are given $ T $ test cases. Solve each of them. What is the lexicographical order of sequences?A sequence $ C = (C_1,C_2,\ldots,C_N) $ is **lexicographically smaller** than a sequence $ D = (D_1,D_2,\ldots,D_N) $ if and only if there exists an integer $ 1 \leq i \leq N $ such that both of the following hold: - $ (C_1,C_2,\ldots,C_{i-1}) = (D_1,D_2,\ldots,D_{i-1}) $ - $ C_i $ is (numerically) smaller than $ D_i $ .

Input Format

The input is given from Standard Input in the following format: > $ T $ $ case_1 $ $ case_2 $ $ \vdots $ $ case_T $ Each case is given in the following format: > $ N $ $ A_1 $ $ A_2 $ $ \dots $ $ A_N $

Output Format

For each test case, output the lexicographically smallest possible sequence $ B $ , separated by newlines.

Explanation/Hint

### Sample Explanation 1 In the first test case, the sequence $ A $ before Snuke's replacement is $ (4,-1,-1,3) $ . Suppose he replaces it to get $ A=(4, 3, 1, 3) $ . Then, $ B=(A_4, A_3, A_1, A_3)=(3, 1, 4, 1) $ . It is impossible to obtain a lexicographically smaller sequence $ B $ than this. ### Constraints - $ 1 \le T \le 10^5 $ - $ 1 \le N \le 5 \times 10^5 $ - $ 1 \le A_i \le N $ or $ A_i = -1 $ . - The sum of $ N $ over all test cases is at most $ 5\times 10^5 $ . - All input values are integers.