#include <algorithm>
#include <codecvt>
#include <fstream>
#include <iostream>
#include <locale>
#include <string>
#include <tuple>
#include <unordered_map>
#include <vector>
using namespace std;
struct delims : ctype< wchar_t > {
delims( locale& ru) : ru( ru) { }
bool do_is( mask m, char_type c) const {
if ( m & space) return ! isalpha ( c, ru) ;
return ctype:: do_is ( m, c) ;
}
locale& ru;
} ;
int main( int argc, const char * argv[ ] ) try {
locale ru( locale( argc> 3 ? argv[ 3 ] : "" ) , new std:: codecvt_utf8 < wchar_t > ) ;
ios_base:: sync_with_stdio ( false ) ;
wifstream inf;
if ( argc> 1 ) inf.open ( argv[ 1 ] ) , wcin.rdbuf ( inf.rdbuf ( ) ) ;
wcin.imbue ( locale( ru, new delims( ru) ) ) ;
wofstream outf;
if ( argc> 2 ) outf.open ( argv[ 2 ] ) , wcout.rdbuf ( outf.rdbuf ( ) ) ;
wcout.imbue ( ru) ;
unordered_map< wstring, int > dict;
for ( wstring s; wcin >> s; ) {
transform( begin( s) ,end( s) , begin( s) ,
[ & ru] ( auto c) { return tolower ( c, ru) ; } ) ;
-- dict[ s] ;
}
vector< pair< wstring,int >> result( begin( dict) ,end( dict) ) ;
sort( begin( result) ,end( result) ,
[ & ru] ( auto & a, auto & b) {
return a.second < b.second ||
( a.second == b.second && ru( a.first , b.first ) ) ;
} ) ;
for ( auto & i : result) wcout << - i.second << " " << i.first << "\n " ;
return 0 ;
} catch ( exception& e) { cout << e.what ( ) << endl; }
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGNvZGVjdnQ+CiNpbmNsdWRlIDxmc3RyZWFtPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxsb2NhbGU+CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDx0dXBsZT4KI2luY2x1ZGUgPHVub3JkZXJlZF9tYXA+CiNpbmNsdWRlIDx2ZWN0b3I+CiAKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCBkZWxpbXMgOiBjdHlwZTx3Y2hhcl90PiB7CiAgICBkZWxpbXMobG9jYWxlJiBydSkgOiBydShydSkge30KICAgIGJvb2wgZG9faXMobWFzayBtLCBjaGFyX3R5cGUgYykgY29uc3QgeyAgIAogICAgICAgIGlmIChtICYgc3BhY2UpIHJldHVybiAhaXNhbHBoYShjLCBydSk7CiAgICAgICAgcmV0dXJuIGN0eXBlOjpkb19pcyhtLCBjKTsKICAgIH0KICAgIGxvY2FsZSYgcnU7Cn07CgppbnQgbWFpbihpbnQgYXJnYywgY29uc3QgY2hhciogYXJndltdKSB0cnkgewoJbG9jYWxlIHJ1KGxvY2FsZShhcmdjPjMgPyBhcmd2WzNdIDogIiIpLCBuZXcgc3RkOjpjb2RlY3Z0X3V0Zjg8d2NoYXJfdD4pOwoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAKCXdpZnN0cmVhbSBpbmY7CglpZiAoYXJnYz4xKSBpbmYub3Blbihhcmd2WzFdKSwgd2Npbi5yZGJ1ZihpbmYucmRidWYoKSk7Cgl3Y2luLmltYnVlKGxvY2FsZShydSwgbmV3IGRlbGltcyhydSkpKTsKIAoJd29mc3RyZWFtIG91dGY7CglpZiAoYXJnYz4yKSBvdXRmLm9wZW4oYXJndlsyXSksIHdjb3V0LnJkYnVmKG91dGYucmRidWYoKSk7Cgl3Y291dC5pbWJ1ZShydSk7CiAKCXVub3JkZXJlZF9tYXA8d3N0cmluZywgaW50PiBkaWN0OwoJZm9yKHdzdHJpbmcgczsgd2NpbiA+PiBzOykgewoJCXRyYW5zZm9ybShiZWdpbihzKSxlbmQocyksIGJlZ2luKHMpLAoJCQlbJnJ1XShhdXRvIGMpIHsgcmV0dXJuIHRvbG93ZXIoYywgcnUpO30pOwoJCS0tZGljdFtzXTsKCX0KIAoJdmVjdG9yPHBhaXI8d3N0cmluZyxpbnQ+PiByZXN1bHQoYmVnaW4oZGljdCksZW5kKGRpY3QpKTsKCXNvcnQoYmVnaW4ocmVzdWx0KSxlbmQocmVzdWx0KSwKCQlbJnJ1XShhdXRvJiBhLCBhdXRvJiBiKSB7CgkJCXJldHVybiBhLnNlY29uZDxiLnNlY29uZCB8fAoJCQkJKGEuc2Vjb25kID09IGIuc2Vjb25kICYmIHJ1KGEuZmlyc3QsIGIuZmlyc3QpKTsKCQl9KTsKIAoJZm9yKGF1dG8mIGkgOiByZXN1bHQpIHdjb3V0IDw8IC1pLnNlY29uZCA8PCAiICIgPDwgaS5maXJzdCA8PCAiXG4iOwoJcmV0dXJuIDA7Cn0gY2F0Y2goZXhjZXB0aW9uJiBlKSB7IGNvdXQgPDwgZS53aGF0KCkgPDwgZW5kbDsgfQo=
stdin
Q2FsbCBtZSBJc2htYWVsLiBNYW55LHllYXJzIGxhdGVyLCBhcyBoZSBmYWNlZCB0aGUgZmlyaW5nIHNxdWFkLCBDb2xvbmVsIEF1cmVsaWFubyBCdWVuZCZpYWN1dGU7YQp3YXMgdG8gcmVtZW1iZXIgdGhhdCBkaXN0YW50IGFmdGVybm9vbiB3aGVuIGhpcyBmYXRoZXIgdG9vayBoaW0gdG8KZGlzY292ZXIgaWNlLiDQm9C+0LvQuNGC0LAsINGB0LLQtdGCINC80L7QtdC5INC20LjQt9C90LgsINC+0LPQvtC90Ywg0LzQvtC40YUg0YfRgNC10YHQtdC7LiDQk9GA0LXRhSDQvNC+0LksINC00YPRiNCwINC80L7Rjywg0JvQvi3Qu9C4LdGC0LAg0JvQvi4g0JvQuC4g0KLQsC4g0J7QvdCwINCx0YvQu9CwINCb0L4sINC/0YDQvtGB0YLQviDQm9C+LCDQv9C+INGD0YLRgNCw0LwsINGA0L7RgdGC0L7QvCDQsiDQv9GP0YLRjCDRhNGD0YLQvtCyICjQsdC10Lcg0LTQstGD0YUg0LLQtdGA0YjQutC+0LIg0Lgg0LIg0L7QtNC90L7QvCDQvdC+0YHQutC1KS4g0J7QvdCwINCx0YvQu9CwINCb0L7Qu9CwINCyINC00LvQuNC90L3Ri9GFINGI0YLQsNC90LDRhS4g0J7QvdCwINCx0YvQu9CwINCU0L7Qu9C70Lgg0LIg0YjQutC+0LvQtS4g0J7QvdCwINCx0YvQu9CwINCU0L7Qu9C+0YDQtdGBINC90LAg0L/Rg9C90LrRgtC40YDQtSDQsdC70LDQvdC60L7Qsi4g0J3QviDQsiDQvNC+0LjRhSDQvtCx0YrRj9GC0YzRj9GFINC+0L3QsCDQsdGL0LvQsCDQstGB0LXQs9C00LA6INCb0L7Qu9C40YLQsAo=
Call me Ishmael. Many,years later, as he faced the firing squad, Colonel Aureliano Buendía
was to remember that distant afternoon when his father took him to
discover ice. Лолита, свет моей жизни, огонь моих чресел. Грех мой, душа моя, Ло-ли-та Ло. Ли. Та. Она была Ло, просто Ло, по утрам, ростом в пять футов (без двух вершков и в одном носке). Она была Лола в длинных штанах. Она была Долли в школе. Она была Долорес на пунктире бланков. Но в моих объятьях она была всегда: Лолита