Загрузка данных


# Ввод строки и разбиение на слова
input_string = input().strip()
words = input_string.split(' - ')

# Инициализация списков для категорий
multiple_3 = []
with_th = []
later_than = []

# Распределение слов по категориям
for word in words:
    # Multiple 3: длина слова кратна 3
    if len(word) % 3 == 0:
        multiple_3.append(word.upper())
    
    # With th: содержит "th" (без учёта регистра)
    if 'th' in word.lower():
        with_th.append(word.capitalize())
    
    # Later than: идёт не позже "poor" в словаре
    if word.lower() <= 'poor':
        later_than.append(word.lower())

# Сортировка в обратном алфавитном порядке
multiple_3.sort(reverse=True)
with_th.sort(reverse=True)
later_than.sort(reverse=True)

# Форматирование вывода через " | "
result_multiple_3 = ' | '.join(multiple_3)
result_with_th = ' | '.join(with_th)
result_later_than = ' | '.join(later_than)

# Вывод результатов
print(result_multiple_3)
print(result_with_th)
print(result_later_than)