#include <iostream>
#include <string>
#include <cmath>
#include <cstdio>
#include <set>
#include <limits>
#include <vector>
#include <queue>
#include <map>
#include <algorithm>
using namespace std;
int main(int argc, char **argv) {
std::ios_base::sync_with_stdio(false);
int T;
cin >> T;
for (int t = 0; t < T; ++t) {
int n;
cin >> n;
map<long long, map<long long, int> > m;
long long p_0, p_1;
long long c, b, a_0, a_1, a_2, a_3;
const long long mult_0 = 1e+4;
const long long mult_1 = 1e+8;
const long long mult_2 = 1e+12;
for (int i = 0; i < n; ++i) {
cin >> c >> b >> a_0 >> a_1 >> a_2 >> a_3;
p_0 = c*mult_1 + b;
p_1 = a_0*mult_2 + a_1*mult_1 + a_2*mult_0 + a_3;
map<long long, int>& mm = m[p_0];
map<long long, int>::iterator it = mm.find(p_1);
if (mm.end() == it) mm[p_1] = 1;
else ++it->second;
}
long long tt;
for (map<long long, map<long long, int> >::iterator it_0 = m.begin();
it_0 != m.end(); ++it_0) {
for (map<long long, int>::iterator it_1 = it_0->second.begin();
it_1 != it_0->second.end(); ++it_1) {
c = it_0->first/mult_1;
b = it_0->first%mult_1;
a_0 = it_1->first/mult_2;
tt = it_1->first % mult_2;
a_1 = tt/mult_1;
tt %= mult_1;
a_2 = tt /mult_0;
a_3 = tt % mult_0;
printf("%02lld %08lld %04lld %04lld %04lld %04lld %d\n",
c, b, a_0, a_1, a_2, a_3, it_1->second);
}
}
printf("\n");
}
}
CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8bGltaXRzPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8cXVldWU+CiNpbmNsdWRlIDxtYXA+CiNpbmNsdWRlIDxhbGdvcml0aG0+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7CiAgICBzdGQ6Omlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgaW50IFQ7CiAgICBjaW4gPj4gVDsKICAgIGZvciAoaW50IHQgPSAwOyB0IDwgVDsgKyt0KSB7CiAgICAgICAgaW50IG47CiAgICAgICAgY2luID4+IG47CiAgICAgICAgCiAgICAgICAgbWFwPGxvbmcgbG9uZywgbWFwPGxvbmcgbG9uZywgaW50PiA+IG07CiAgICAgICAgbG9uZyBsb25nIHBfMCwgcF8xOyAKICAgICAgICBsb25nIGxvbmcgYywgYiwgYV8wLCBhXzEsIGFfMiwgYV8zOwogICAgICAgIGNvbnN0IGxvbmcgbG9uZyBtdWx0XzAgPSAxZSs0OwogICAgICAgIGNvbnN0IGxvbmcgbG9uZyBtdWx0XzEgPSAxZSs4OwogICAgICAgIGNvbnN0IGxvbmcgbG9uZyBtdWx0XzIgPSAxZSsxMjsKICAgICAgICAKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkgewogICAgICAgICAgICBjaW4gPj4gYyA+PiBiID4+IGFfMCA+PiBhXzEgPj4gYV8yID4+IGFfMzsKICAgICAgICAgICAgcF8wID0gYyptdWx0XzEgKyBiOwogICAgICAgICAgICBwXzEgPSBhXzAqbXVsdF8yICsgYV8xKm11bHRfMSArIGFfMiptdWx0XzAgKyBhXzM7CiAgICAgICAgICAgIAogICAgICAgICAgICBtYXA8bG9uZyBsb25nLCBpbnQ+JiBtbSA9IG1bcF8wXTsKICAgICAgICAgICAgbWFwPGxvbmcgbG9uZywgaW50Pjo6aXRlcmF0b3IgaXQgPSBtbS5maW5kKHBfMSk7CiAgICAgICAgICAgIGlmIChtbS5lbmQoKSA9PSBpdCkgbW1bcF8xXSA9IDE7CiAgICAgICAgICAgIGVsc2UgKytpdC0+c2Vjb25kOwogICAgICAgIH0KICAgICAgICBsb25nIGxvbmcgdHQ7CiAgICAgICAgZm9yIChtYXA8bG9uZyBsb25nLCBtYXA8bG9uZyBsb25nLCBpbnQ+ID46Oml0ZXJhdG9yIGl0XzAgPSBtLmJlZ2luKCk7IAogICAgICAgICAgICAgaXRfMCAhPSBtLmVuZCgpOyArK2l0XzApIHsKICAgICAgICAgICAgIGZvciAobWFwPGxvbmcgbG9uZywgaW50Pjo6aXRlcmF0b3IgaXRfMSA9IGl0XzAtPnNlY29uZC5iZWdpbigpOwogICAgICAgICAgICAgaXRfMSAhPSBpdF8wLT5zZWNvbmQuZW5kKCk7ICsraXRfMSkgewogICAgICAgICAgICAgICAgIGMgPSBpdF8wLT5maXJzdC9tdWx0XzE7CiAgICAgICAgICAgICAgICAgYiA9IGl0XzAtPmZpcnN0JW11bHRfMTsKICAgICAgICAgICAgICAgICBhXzAgPSBpdF8xLT5maXJzdC9tdWx0XzI7CiAgICAgICAgICAgICAgICAgdHQgPSBpdF8xLT5maXJzdCAlIG11bHRfMjsKICAgICAgICAgICAgICAgICBhXzEgPSB0dC9tdWx0XzE7CiAgICAgICAgICAgICAgICAgdHQgJT0gbXVsdF8xOwogICAgICAgICAgICAgICAgIGFfMiA9IHR0IC9tdWx0XzA7CiAgICAgICAgICAgICAgICAgYV8zID0gdHQgJSBtdWx0XzA7IAogICAgICAgICAgICAgICAgIHByaW50ZigiJTAybGxkICUwOGxsZCAlMDRsbGQgJTA0bGxkICUwNGxsZCAlMDRsbGQgJWRcbiIsIAogICAgICAgICAgICAgICAgICAgICAgICBjLCBiLCBhXzAsIGFfMSwgYV8yLCBhXzMsIGl0XzEtPnNlY29uZCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcHJpbnRmKCJcbiIpOwogICAgIH0KfQ==
Mgo2CjAzIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDIgCjAzIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDEgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDEgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDIgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDEgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDIgCgo1CjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDQgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDIgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDUgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDYgCjMwIDEwMTAzNTM4IDIyMjIgMTIzMyA2MTYwIDAxNDMg
2
6
03 10103538 2222 1233 6160 0142
03 10103538 2222 1233 6160 0141
30 10103538 2222 1233 6160 0141
30 10103538 2222 1233 6160 0142
30 10103538 2222 1233 6160 0141
30 10103538 2222 1233 6160 0142
5
30 10103538 2222 1233 6160 0144
30 10103538 2222 1233 6160 0142
30 10103538 2222 1233 6160 0145
30 10103538 2222 1233 6160 0146
30 10103538 2222 1233 6160 0143