#include <iostream>
#include <string>
using namespace std;
void CompressAndShow(string s){
cout << s[0];
if (s.length() > 1)
{
int i = 1;
int counter = 1;
while (i < s.length())
{
while (s[i-1] == s[i])
{
counter++;
i++;
}
if (counter == 1)
{
cout << s[i];
i++;
}
else if (counter == 2)
{
cout << s.substr(i-1, 2);
counter = 1;
i++;
}
else if (counter > 2)
{
cout << counter << s[i];
counter = 1;
i++;
}
}
}
cout << endl;
}
int main()
{
int sets;
cin >> sets;
while (sets--)
{
string entry;
cin >> entry;
CompressAndShow(entry);
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgoKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp2b2lkIENvbXByZXNzQW5kU2hvdyhzdHJpbmcgcyl7CgogICAgY291dCA8PCBzWzBdOwogICAgaWYgKHMubGVuZ3RoKCkgPiAxKQogIHsKICAgICAgaW50IGkgPSAxOwogICAgICBpbnQgY291bnRlciA9IDE7CiAgICAgIHdoaWxlIChpIDwgcy5sZW5ndGgoKSkKICAgICB7CiAgICAgICAgICB3aGlsZSAoc1tpLTFdID09IHNbaV0pCiAgICAgICAgICB7CiAgICAgICAgICAgICAgY291bnRlcisrOwogICAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChjb3VudGVyID09IDEpCiAgICAgICAgICB7CiAgICAgICAgICAgICAgY291dCA8PCBzW2ldOwogICAgICAgICAgICAgIGkrKzsKICAgICAgICAgIH0KICAgICAgICAgIGVsc2UgaWYgKGNvdW50ZXIgPT0gMikKICAgICAgICAgIHsKICAgICAgICAgICAgICBjb3V0IDw8IHMuc3Vic3RyKGktMSwgMik7CiAgICAgICAgICAgICAgY291bnRlciA9IDE7CiAgICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgICAgICAgZWxzZSBpZiAoY291bnRlciA+IDIpCiAgICAgICAgICB7CiAgICAgICAgICAgICAgY291dCA8PCBjb3VudGVyIDw8IHNbaV07CiAgICAgICAgICAgICAgY291bnRlciA9IDE7CiAgICAgICAgICAgICAgaSsrOwogICAgICAgICAgfQogICAgfQogIH0KICBjb3V0IDw8IGVuZGw7Cn0KCmludCBtYWluKCkKewogICAgaW50IHNldHM7CiAgICBjaW4gPj4gc2V0czsKICAgICAgICB3aGlsZSAoc2V0cy0tKQogICAgICAgIHsKICAgICAgICAgICAgc3RyaW5nIGVudHJ5OwogICAgICAgICAgICBjaW4gPj4gZW50cnk7CiAgICAgICAgICAgIENvbXByZXNzQW5kU2hvdyhlbnRyeSk7CiAgICAgICAgfQogICAgcmV0dXJuIDA7Cn0K