for pratyush in range(int(input())):
n=int(input())
l=list(map(int,input().split()))
o,e=0,0
a,b=[],[]
for i in range(2*n):
if l[i]%2==0:
b.append(i)
e+=1
else:
o+=1
a.append(i)
if o%2==1:
a.pop()
b.pop()
else:
if o>1:
a.pop()
a.pop()
o-=2
else:
b.pop()
b.pop()
e-=2
for i in range(0,len(a),2):
print(a[i]+1,a[i+1]+1)
for i in range(0,len(b),2):
print(b[i]+1,b[i+1]+1)
#include <bits/stdc++.h>
using namespace std;
void solve()
{
int n,cnt;
cin >> n;
int a[2 * n];
cnt=0;
vector<int> even; // carry index
vector<int> odd;
for (int i = 0; i < 2 * n; i++)
{
cin >> a[i];
if (a[i] % 2 == 0)
{
even.push_back(i + 1);
}
else
{
odd.push_back(i + 1);
}
}
for (int i = 0; i < even.size(); i += 2)
{
if (i + 1 < even.size() and cnt<n-1)
{
// cout<<"before";
// cout<<cnt<<"\n";
cout << even[i] << " " << even[i + 1] << "\n";
cnt++;
// cout<<cnt<<endl;
// cout<<"after";
}
}
for (int i = 0; i < odd.size(); i += 2)
{
if (i + 1 < odd.size() and cnt<n-1)
{
// cout<<"before";
// cout<<cnt<<"\n";
cout << odd[i] << " " << odd[i + 1] << "\n";
cnt++;
// cout<<cnt<<"\n";
// cout<<"after";
}
}
// cout<<cnt<<endl;
}
int main()
{
int t;
cin >> t;
// t = 1;
while (t--)
{
solve();
}
}
238. Product of Array Except Self | 229. Majority Element II |
222. Count Complete Tree Nodes | 215. Kth Largest Element in an Array |
198. House Robber | 153. Find Minimum in Rotated Sorted Array |
150. Evaluate Reverse Polish Notation | 144. Binary Tree Preorder Traversal |
137. Single Number II | 130. Surrounded Regions |
129. Sum Root to Leaf Numbers | 120. Triangle |
102. Binary Tree Level Order Traversal | 96. Unique Binary Search Trees |
75. Sort Colors | 74. Search a 2D Matrix |
71. Simplify Path | 62. Unique Paths |
50. Pow(x, n) | 43. Multiply Strings |
34. Find First and Last Position of Element in Sorted Array | 33. Search in Rotated Sorted Array |
17. Letter Combinations of a Phone Number | 5. Longest Palindromic Substring |
3. Longest Substring Without Repeating Characters | 1312. Minimum Insertion Steps to Make a String Palindrome |
1092. Shortest Common Supersequence | 1044. Longest Duplicate Substring |
1032. Stream of Characters | 987. Vertical Order Traversal of a Binary Tree |