CF1927D Find the Different Ones!

Description

You are given an array $ a $ of $ n $ integers, and $ q $ queries. Each query is represented by two integers $ l $ and $ r $ ( $ 1 \le l \le r \le n $ ). Your task is to find, for each query, two indices $ i $ and $ j $ (or determine that they do not exist) such that: - $ l \le i \le r $ ; - $ l \le j \le r $ ; - $ a_i \ne a_j $ . In other words, for each query, you need to find a pair of different elements among $ a_l, a_{l+1}, \dots, a_r $ , or report that such a pair does not exist.

Input Format

The first line of the input contains a single integer $ t $ ( $ 1 \le t \le 10^4 $ ) — the number of test cases. The descriptions of the test cases follow. The first line of each test case contains a single integer $ n $ ( $ 2 \le n \le 2 \cdot 10^5 $ ) — the length of the array $ a $ . The second line of each test case contains $ n $ integers $ a_1, a_2, \dots, a_n $ ( $ 1 \le a_i \le 10^6 $ ) — the elements of the array $ a $ . The third line of each test case contains a single integer $ q $ ( $ 1 \le q \le 2 \cdot 10^5 $ ) — the number of queries. The next $ q $ lines contain two integers each, $ l $ and $ r $ ( $ 1 \le l < r \le n $ ) — the boundaries of the query. It is guaranteed that the sum of the values of $ n $ across all test cases does not exceed $ 2 \cdot 10^5 $ . Similarly, it is guaranteed that the sum of the values of $ q $ across all test cases does not exceed $ 2 \cdot 10^5 $ .

Output Format

For each query, output two integers separated by space: $ i $ and $ j $ ( $ l \le i, j \le r $ ), for which $ a_i \ne a_j $ . If such a pair does not exist, output $ i=-1 $ and $ j=-1 $ . You may separate the outputs for the test cases with empty lines. This is not a mandatory requirement.