import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Set;
import java.util.HashSet;
public class Main {
Set<StringBuffer> words = new HashSet<>();
boolean prevWord = false;
while (reader.ready()) {
char c = (char)reader.read();
if (c != ' ') {
currentWord.append(c);
prevWord = true;
} else if (prevWord == true) {
words.add(currentWord);
prevWord = false;
}
}
if (currentWord.length() != 0) {
words.add(currentWord);
}
}
}
}
aW1wb3J0IGphdmEuaW8uQnVmZmVyZWRSZWFkZXI7CmltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwppbXBvcnQgamF2YS5pby5JbnB1dFN0cmVhbVJlYWRlcjsKaW1wb3J0IGphdmEudXRpbC5TZXQ7CmltcG9ydCBqYXZhLnV0aWwuSGFzaFNldDsKCnB1YmxpYyBjbGFzcyBNYWluIHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAgICAgICAgU2V0PFN0cmluZ0J1ZmZlcj4gd29yZHMgPSBuZXcgSGFzaFNldDw+KCk7CiAgICAgICAgQnVmZmVyZWRSZWFkZXIgcmVhZGVyID0gbmV3IEJ1ZmZlcmVkUmVhZGVyKG5ldyBJbnB1dFN0cmVhbVJlYWRlcihTeXN0ZW0uaW4pKTsKICAgICAgICBTdHJpbmdCdWZmZXIgY3VycmVudFdvcmQgPSBuZXcgU3RyaW5nQnVmZmVyKCk7CiAgICAgICAgYm9vbGVhbiBwcmV2V29yZCA9IGZhbHNlOwogICAgICAgIHdoaWxlIChyZWFkZXIucmVhZHkoKSkgewogICAgICAgICAgICBjaGFyIGMgPSAoY2hhcilyZWFkZXIucmVhZCgpOwogICAgICAgICAgICBpZiAoYyAhPSAnICcpIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRXb3JkLmFwcGVuZChjKTsKICAgICAgICAgICAgICAgIHByZXZXb3JkID0gdHJ1ZTsKICAgICAgICAgICAgfSBlbHNlIGlmIChwcmV2V29yZCA9PSB0cnVlKSB7CiAgICAgICAgICAgICAgICB3b3Jkcy5hZGQoY3VycmVudFdvcmQpOwogICAgICAgICAgICAgICAgY3VycmVudFdvcmQgPSBuZXcgU3RyaW5nQnVmZmVyKCk7CiAgICAgICAgICAgICAgICBwcmV2V29yZCA9IGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChjdXJyZW50V29yZC5sZW5ndGgoKSAhPSAwKSB7CiAgICAgICAgICAgIHdvcmRzLmFkZChjdXJyZW50V29yZCk7CiAgICAgICAgfQogICAgICAgIGZvciAoU3RyaW5nQnVmZmVyIHdvcmQgOiB3b3JkcykgewogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4od29yZCk7CiAgICAgICAgfQogICAgfQp9