#include <iostream>
#include <iomanip>
#include <map>
#include <set>
#include <cmath>
#include <vector>
#include <climits>
#include <string>
#include <algorithm>
#include <sstream>
#include <numeric>
using namespace std;
vector<string> split(string haystack, string needle) {
vector<string> result;
int startPos = 0;
int foundPos = haystack.find(needle, startPos);
while (foundPos != string::npos) {
int count = foundPos - startPos;
string token = haystack.substr(startPos, count);
if (!token.empty()) {
result.push_back(token);
}
startPos = foundPos + needle.length();
foundPos = haystack.find(needle, startPos);
}
string token = haystack.substr(startPos, haystack.length() - startPos);
if (!token.empty()) {
result.push_back(token);
}
return result;
}
string nameConvert(const string& name) {
const string DELIMITER = " ";
stringstream builder;
auto parts = split(name, DELIMITER);
for (auto part : parts) {
part[0] = toupper(part[0]);
transform(part.begin() + 1, part.end(), part.begin() + 1, ::tolower);
builder << part << DELIMITER;
}
return builder.str();
}
string dateConvert(const string& date) {
const string DELIMITER = "/";
stringstream builder;
auto parts = split(date, DELIMITER);
builder << setw(2) << setfill('0') << parts[0] << DELIMITER;
builder << setw(2) << setfill('0') << parts[1] << DELIMITER;
builder << parts[2];
return builder.str();
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
string s;cin >> s;
size_t position;
while ((position = s.find("111")) != string::npos) {
s.erase(position, 3);
}
if (s.empty()) {
cout << "EMPTY";
}
else {
cout << s;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHNldD4KI2luY2x1ZGUgPGNtYXRoPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Y2xpbWl0cz4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPHNzdHJlYW0+CiNpbmNsdWRlIDxudW1lcmljPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdmVjdG9yPHN0cmluZz4gc3BsaXQoc3RyaW5nIGhheXN0YWNrLCBzdHJpbmcgbmVlZGxlKSB7CiAgICB2ZWN0b3I8c3RyaW5nPiByZXN1bHQ7CiAgICBpbnQgc3RhcnRQb3MgPSAwOwogICAgaW50IGZvdW5kUG9zID0gaGF5c3RhY2suZmluZChuZWVkbGUsIHN0YXJ0UG9zKTsKICAgIHdoaWxlIChmb3VuZFBvcyAhPSBzdHJpbmc6Om5wb3MpIHsKICAgICAgICBpbnQgY291bnQgPSBmb3VuZFBvcyAtIHN0YXJ0UG9zOwogICAgICAgIHN0cmluZyB0b2tlbiA9IGhheXN0YWNrLnN1YnN0cihzdGFydFBvcywgY291bnQpOwogICAgICAgIGlmICghdG9rZW4uZW1wdHkoKSkgewogICAgICAgICAgICByZXN1bHQucHVzaF9iYWNrKHRva2VuKTsKICAgICAgICB9CiAgICAgICAgc3RhcnRQb3MgPSBmb3VuZFBvcyArIG5lZWRsZS5sZW5ndGgoKTsKICAgICAgICBmb3VuZFBvcyA9IGhheXN0YWNrLmZpbmQobmVlZGxlLCBzdGFydFBvcyk7CiAgICB9CiAgICBzdHJpbmcgdG9rZW4gPSBoYXlzdGFjay5zdWJzdHIoc3RhcnRQb3MsIGhheXN0YWNrLmxlbmd0aCgpIC0gc3RhcnRQb3MpOwogICAgaWYgKCF0b2tlbi5lbXB0eSgpKSB7CiAgICAgICAgcmVzdWx0LnB1c2hfYmFjayh0b2tlbik7CiAgICB9CiAgICByZXR1cm4gcmVzdWx0Owp9CgpzdHJpbmcgbmFtZUNvbnZlcnQoY29uc3Qgc3RyaW5nJiBuYW1lKSB7CiAgICBjb25zdCBzdHJpbmcgREVMSU1JVEVSID0gIiAiOwogICAgc3RyaW5nc3RyZWFtIGJ1aWxkZXI7CiAgICBhdXRvIHBhcnRzID0gc3BsaXQobmFtZSwgREVMSU1JVEVSKTsKICAgIGZvciAoYXV0byBwYXJ0IDogcGFydHMpIHsKICAgICAgICBwYXJ0WzBdID0gdG91cHBlcihwYXJ0WzBdKTsKICAgICAgICB0cmFuc2Zvcm0ocGFydC5iZWdpbigpICsgMSwgcGFydC5lbmQoKSwgcGFydC5iZWdpbigpICsgMSwgOjp0b2xvd2VyKTsKICAgICAgICBidWlsZGVyIDw8IHBhcnQgPDwgREVMSU1JVEVSOwogICAgfQogICAgcmV0dXJuIGJ1aWxkZXIuc3RyKCk7Cn0KCnN0cmluZyBkYXRlQ29udmVydChjb25zdCBzdHJpbmcmIGRhdGUpIHsKICAgIGNvbnN0IHN0cmluZyBERUxJTUlURVIgPSAiLyI7CiAgICBzdHJpbmdzdHJlYW0gYnVpbGRlcjsKICAgIGF1dG8gcGFydHMgPSBzcGxpdChkYXRlLCBERUxJTUlURVIpOwogICAgYnVpbGRlciA8PCBzZXR3KDIpIDw8IHNldGZpbGwoJzAnKSA8PCBwYXJ0c1swXSA8PCBERUxJTUlURVI7CiAgICBidWlsZGVyIDw8IHNldHcoMikgPDwgc2V0ZmlsbCgnMCcpIDw8IHBhcnRzWzFdIDw8IERFTElNSVRFUjsKICAgIGJ1aWxkZXIgPDwgcGFydHNbMl07CiAgICByZXR1cm4gYnVpbGRlci5zdHIoKTsKfQoKCmludCBtYWluKCkgewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKE5VTEwpOwogICAgCiAgICBzdHJpbmcgcztjaW4gPj4gczsKICAgIAogICAgc2l6ZV90IHBvc2l0aW9uOwogICAgd2hpbGUgKChwb3NpdGlvbiA9IHMuZmluZCgiMTExIikpICE9IHN0cmluZzo6bnBvcykgewogICAgICAgIHMuZXJhc2UocG9zaXRpb24sIDMpOwogICAgfQogICAgaWYgKHMuZW1wdHkoKSkgewogICAgICAgIGNvdXQgPDwgIkVNUFRZIjsKICAgIH0KICAgIGVsc2UgewogICAgICAgIGNvdXQgPDwgczsKICAgIH0KICAgIHJldHVybiAwOwp9Cgo=