#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned ll
#define ld long double
typedef vector<int> vi;
typedef multiset<int> mi;
typedef multiset<ll> mll;
typedef vector<ll> vll;
typedef vector<bool> vb;
typedef vector<string> vs;
typedef set<ll> sll;
typedef vector<vector<int>> _2vi;
typedef vector<vector<ll>> _2vll;
#define all(v) ((v).begin()), ((v).end())
#define sz(v) ((ll)((v).size()))
#define vinp(v, n) \
for (ull i = 0; i < (n); i++) \
cin >> (v)[i]
#define printv(v) \
for (auto i : (v)) \
cout << i << " "
#define fr0(i, n) for (ull(i) = 0; (i) < (n); (i)++)
#define fr1(i, n) for (ull(i) = 1; (i) < (n); (i)++)
#define fr(i, x, n) for (ull(i) = (x); (i) < (n); (i)++)
#define _CRT_SECURE_NO_WARNING
const ll MOD = 1000000007;
void Bustany() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
#ifndef ONLINE_JUDGE
freopen("./in.txt", "r", stdin), freopen("./out.txt", "w", stdout);
#endif
}
const ll N = 2e5 + 5;
vector<sll> adj(N);
//_2vll adj(N,vll(N));
vb vis;
map<ll, ll> mp;
void solve() {
ll n;
cin >> n;
mp[0] = 6;
mp[1] = 2;
mp[2] = 5;
mp[3] = 5;
mp[4] = 4;
mp[5] = 5;
mp[6] = 6;
mp[7] = 3;
mp[8] = 7;
mp[9] = 6;
//min value = min length
//488888 /39
//208888 /
//238888
//max
//7111111111
string max = "";
if (n % 2) {
max += '7';
for (ll i = 0; i < (n / 2) - 1; i++) {
max += '1';
}
} else {
for (ll i = 0; i < n / 2; i++) {
max += '1';
}
}
string min = "";
map<ll, ll> mpp;
mpp[2] = 1;
mpp[3] = 7;
mpp[4] = 4;
mpp[5] = 2;
mpp[6] = 6;
mpp[7] = 8;
if (n <= 7) {
cout << mpp[n] << " " << max << endl;
return;
}
for (ll i = 0; i < (n / 7) - 1; i++) {
min += '8';
}
n %= 7;
n += 7;
if (n == 7) {
min += '8';
} else if (n == 8) {
min = "10" + min;
} else if (n == 9) {
min = "18" + min;
} else if (n == 10) {
if (!min.empty()) {
min.pop_back();
min = "200" + min;
} else
min = "22" + min;
} else if (n == 11) {
min = "20" + min;
} else if (n == 12) {
min = "28" + min;
} else if (n == 13) {
min = "68" + min;
}
cout << min << " " << max << endl;
}
int main() {
Bustany();
ll t = 1;
cin >> t;
while (t--) {
solve();
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiAKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIAojZGVmaW5lIGxsIGxvbmcgbG9uZwojZGVmaW5lIHVsbCB1bnNpZ25lZCBsbAojZGVmaW5lIGxkIGxvbmcgZG91YmxlCnR5cGVkZWYgdmVjdG9yPGludD4gdmk7CnR5cGVkZWYgbXVsdGlzZXQ8aW50PiBtaTsKdHlwZWRlZiBtdWx0aXNldDxsbD4gbWxsOwp0eXBlZGVmIHZlY3RvcjxsbD4gdmxsOwp0eXBlZGVmIHZlY3Rvcjxib29sPiB2YjsKdHlwZWRlZiB2ZWN0b3I8c3RyaW5nPiB2czsKdHlwZWRlZiBzZXQ8bGw+IHNsbDsKdHlwZWRlZiB2ZWN0b3I8dmVjdG9yPGludD4+IF8ydmk7CnR5cGVkZWYgdmVjdG9yPHZlY3RvcjxsbD4+IF8ydmxsOwojZGVmaW5lIGFsbCh2KSAoKHYpLmJlZ2luKCkpLCAoKHYpLmVuZCgpKQojZGVmaW5lIHN6KHYpICgobGwpKCh2KS5zaXplKCkpKQogCiNkZWZpbmUgdmlucCh2LCBuKSAgICAgICAgICAgICAgICBcCiAgICBmb3IgKHVsbCBpID0gMDsgaSA8IChuKTsgaSsrKSBcCiAgICBjaW4gPj4gKHYpW2ldCiNkZWZpbmUgcHJpbnR2KHYpICAgICAgXAogICAgZm9yIChhdXRvIGkgOiAodikpIFwKICAgIGNvdXQgPDwgaSA8PCAiICIKI2RlZmluZSBmcjAoaSwgbikgZm9yICh1bGwoaSkgPSAwOyAoaSkgPCAobik7IChpKSsrKQojZGVmaW5lIGZyMShpLCBuKSBmb3IgKHVsbChpKSA9IDE7IChpKSA8IChuKTsgKGkpKyspCiNkZWZpbmUgZnIoaSwgeCwgbikgZm9yICh1bGwoaSkgPSAoeCk7IChpKSA8IChuKTsgKGkpKyspCiNkZWZpbmUgX0NSVF9TRUNVUkVfTk9fV0FSTklORwpjb25zdCBsbCBNT0QgPSAxMDAwMDAwMDA3OwogCnZvaWQgQnVzdGFueSgpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShOVUxMKTsKICAgIGNvdXQudGllKE5VTEwpOwojaWZuZGVmIE9OTElORV9KVURHRQogICAgZnJlb3BlbigiLi9pbi50eHQiLCAiciIsIHN0ZGluKSwgZnJlb3BlbigiLi9vdXQudHh0IiwgInciLCBzdGRvdXQpOwojZW5kaWYKfQogCmNvbnN0IGxsIE4gPSAyZTUgKyA1Owp2ZWN0b3I8c2xsPiBhZGooTik7Ci8vXzJ2bGwgYWRqKE4sdmxsKE4pKTsKdmIgdmlzOwptYXA8bGwsIGxsPiBtcDsKIAp2b2lkIHNvbHZlKCkgewogICAgbGwgbjsKICAgIGNpbiA+PiBuOwogICAgbXBbMF0gPSA2OwogICAgbXBbMV0gPSAyOwogICAgbXBbMl0gPSA1OwogICAgbXBbM10gPSA1OwogICAgbXBbNF0gPSA0OwogICAgbXBbNV0gPSA1OwogICAgbXBbNl0gPSA2OwogICAgbXBbN10gPSAzOwogICAgbXBbOF0gPSA3OwogICAgbXBbOV0gPSA2OwogICAgLy9taW4gdmFsdWUgPSBtaW4gbGVuZ3RoCiAgICAvLzQ4ODg4OCAgIC8zOQogICAgLy8yMDg4ODggIC8KICAgIC8vMjM4ODg4CiAgICAvL21heAogICAgLy83MTExMTExMTExCiAgICBzdHJpbmcgbWF4ID0gIiI7CiAgICBpZiAobiAlIDIpIHsKICAgICAgICBtYXggKz0gJzcnOwogICAgICAgIGZvciAobGwgaSA9IDA7IGkgPCAobiAvIDIpIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIG1heCArPSAnMSc7CiAgICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgICBmb3IgKGxsIGkgPSAwOyBpIDwgbiAvIDI7IGkrKykgewogICAgICAgICAgICBtYXggKz0gJzEnOwogICAgICAgIH0KICAgIH0KICAgIHN0cmluZyBtaW4gPSAiIjsKICAgIG1hcDxsbCwgbGw+IG1wcDsKICAgIG1wcFsyXSA9IDE7CiAgICBtcHBbM10gPSA3OwogICAgbXBwWzRdID0gNDsKICAgIG1wcFs1XSA9IDI7CiAgICBtcHBbNl0gPSA2OwogICAgbXBwWzddID0gODsKICAgIGlmIChuIDw9IDcpIHsKICAgICAgICBjb3V0IDw8IG1wcFtuXSA8PCAiICIgPDwgbWF4IDw8IGVuZGw7CiAgICAgICAgcmV0dXJuOwogICAgfQogICAgZm9yIChsbCBpID0gMDsgaSA8IChuIC8gNykgLSAxOyBpKyspIHsKICAgICAgICBtaW4gKz0gJzgnOwogICAgfQogICAgbiAlPSA3OwogICAgbiArPSA3OwogICAgaWYgKG4gPT0gNykgewogICAgICAgIG1pbiArPSAnOCc7CiAgICB9IGVsc2UgaWYgKG4gPT0gOCkgewogICAgICAgIG1pbiA9ICIxMCIgKyBtaW47CiAgICB9IGVsc2UgaWYgKG4gPT0gOSkgewogICAgICAgIG1pbiA9ICIxOCIgKyBtaW47CiAgICB9IGVsc2UgaWYgKG4gPT0gMTApIHsKICAgICAgICBpZiAoIW1pbi5lbXB0eSgpKSB7CiAgICAgICAgICAgIG1pbi5wb3BfYmFjaygpOwogICAgICAgICAgICBtaW4gPSAiMjAwIiArIG1pbjsKICAgICAgICB9IGVsc2UKICAgICAgICAgICAgbWluID0gIjIyIiArIG1pbjsKICAgIH0gZWxzZSBpZiAobiA9PSAxMSkgewogICAgICAgIG1pbiA9ICIyMCIgKyBtaW47CiAgICB9IGVsc2UgaWYgKG4gPT0gMTIpIHsKICAgICAgICBtaW4gPSAiMjgiICsgbWluOwogICAgfSBlbHNlIGlmIChuID09IDEzKSB7CiAgICAgICAgbWluID0gIjY4IiArIG1pbjsKICAgIH0KICAgIGNvdXQgPDwgbWluIDw8ICIgIiA8PCBtYXggPDwgZW5kbDsKfQogCmludCBtYWluKCkgewogICAgQnVzdGFueSgpOwogICAgbGwgdCA9IDE7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlICh0LS0pIHsKICAgICAgICBzb2x2ZSgpOwogICAgfQp9