#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <mutex>
#include <map>
#include <list>
#include <string>
#include <deque>
#include <queue>
#include <stack>
#include <vector>
#include <math.h>
#include <unordered_map>
#include <functional>
#include <algorithm>
using namespace std;
string modifyStringError(string s) {
if (s.length() == 0) {
return "";
}
string resStr;
int count1 = 0;
int count2 = 0;
for (int i = 0; i < s.length(); ++i) {
int count = 1;
for (int j = i; j < s.length(); ++j) {
if (s[i] == s[j + 1]) {
count++;
if (count > 2) {
s.replace(j + 1,1," ");
}
}
else {
i = j;
break;
}
}
}
string tmpS1;
for (int i = 0; i < s.length(); ++i) {
if (s[i] != ' ') {
tmpS1 += s[i];
}
}
for (int i = 0; i < tmpS1.length(); ++i) {
if (tmpS1[i] == tmpS1[i + 1] && tmpS1[i + 2] == tmpS1[i + 3]) {
tmpS1.replace(i + 2, 1, " ");
}
}
for (int i = 0; i < tmpS1.length(); ++i) {
if (tmpS1[i] != ' ') {
resStr += tmpS1[i];
}
}
return resStr;
}
int main(){
string s;
int n = 0;
cin >> n;
for(int i = 0;i < n;++i){
cin >> s;
cout << modifyStringError(s) << endl;
}
return 0;
}