#include<iostream>
#include<map>
#include<string>
using namespace std;

map<string,int>mp;

int main(void)
{
	string str;
	cin >> str;
	int len = str.size();
	for(int i = 0;i < len;i++)
	{
		for(int j = 1;j <= len - i;j++)
		{
			string t = str.substr(i,j);
			mp[t]++;	
		}	
	}	
	for(auto s : mp)
	{
		if(s.second > 1)cout << s.first << " " <<s.second << endl;
	}
	return 0;
}