def cal(l):
while l and int(l[-1])%2==0:
l.pop()
if not l:
return -1
j=len(l)-2
while j>=0:
if int(l[j])%2==1:
break
j-=1
if j==-1:
return -1
for i in range(j):
l.pop(0)
return "".join(l)
for pratyush in range(int(input())):
n=int(input())
s=input()
l=list(s)
print(cal(l))
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
#define eb emplace_back
#define endl '\n'
void solve(){
int n; cin>>n;
vector<int> v;
for(int i = 0; i<n; i++){
char x; cin>>x;
if((x - '0')%2){
v.pb((x - '0'));
}
}
if(v.size() <= 1){
cout<<"-1"<<endl;
}
else{
cout<<v[0]<<v[1]<<endl;
}
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int T; cin>>T;
while(T--){
solve();
}
}
112. Path Sum | 1556A - A Variety of Operations |
136. Single Number | 169. Majority Element |
119. Pascal's Triangle II | 409. Longest Palindrome |
1574A - Regular Bracket Sequences | 1574B - Combinatorics Homework |
1567A - Domino Disaster | 1593A - Elections |
1607A - Linear Keyboard | EQUALCOIN Equal Coins |
XOREQN Xor Equation | MAKEPAL Weird Palindrome Making |
HILLSEQ Hill Sequence | MAXBRIDGE Maximise the bridges |
WLDRPL Wildcard Replacement | 1221. Split a String in Balanced Strings |
1002. Find Common Characters | 1602A - Two Subsequences |
1555A - PizzaForces | 1607B - Odd Grasshopper |
1084A - The Fair Nut and Elevator | 1440B - Sum of Medians |
1032A - Kitchen Utensils | 1501B - Napoleon Cake |
1584B - Coloring Rectangles | 1562B - Scenes From a Memory |
1521A - Nastia and Nearly Good Numbers | 208. Implement Trie |