rt,
#include <bits/stdc++.h>
using namespace std;
int read()
{
int x=0,f=1;
char ch=getchar();
while(ch<'0' || ch>'9'){
if(ch=='-') f=-1;
ch=getchar();
}
while(ch>='0' && ch<='9'){
x=(x<<1)+(x<<3)+(ch^48);
ch=getchar();
}
return x*f;
}
int print(int x)
{
if(x<0) putchar('-'),x=-x;
if(x>9) print(x/10);
putchar(x%10+'0');
}
#define en putchar('\n')
/*
7:8
6:0 6
5:2
4:4
3:7
2:1
*/
int n;
void solve()
{
n=read();
if(n%7==0){
for(int i=1;i<=n/7;i++) print(8);
en;
return;
}
if(n%7==1){
if(n==1) print(-1),en;
else{
print(10);
for(int i=1;i<(n-1)/7;i++) print(8);
en;
}
return;
}
if(n%7==2){
print(1);
for(int i=1;i<=(n-2)/7;i++) print(8);
en;
return;
}
if(n%7==3){
if(n==3) print(7),en;
else if(n==10) print(22),en;
else{
print(200);
for(int i=1;i<=(n-3)/7-2;i++) print(8);
en;
}
return;
}
if(n%7==4){
if(n==4) print(4),en;
else{
print(20);
for(int i=1;i<=(n-4)/7-1;i++) print(8);
en;
}
return;
}
if(n%7==5){
print(2);
for(int i=1;i<=(n-5)/7;i++) print(8);
en;
return;
}
if(n%7==6){
print(6);
for(int i=1;i<=(n-6)/7;i++) print(8);
en;
return;
}
}
int main()
{
//freopen("sticks.in","r",stdin);
//freopen("sticks.out","w",stdout);
int T;
T=read();
while(T--){
solve();
}
return 0;
}