#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

void print(std::vector<std::string> substring) {
	for (int i = 0; i < substring.size(); i++) {
		std::cout << substring[i] << std::endl;
	}
}

int main() {
	std::string a;
	std::cin >> a;
	std::vector<std::string> substring;
	for (int i = a.size() - 1; i >= 0; i--) {
		substring.emplace_back(a.substr(i, a.size() - i));
	}
	std::sort(substring.begin(), substring.end());
	print(substring);
	return 0;
}