#include <iostream>
#include <cctype>
int main( ) {
std:: size_t counts[ 33 ] = { 0 } ;
for ( char ch; std:: cin >> ch; ) {
if ( std:: isalpha ( ch) ) {
++ counts[ std:: tolower ( ch) - 'a' ] ;
}
}
for ( std:: size_t i = 33 ; i-- ! = 0 ; ) {
if ( counts[ i] >= 3 ) {
std:: cout << static_cast < char > ( i + 'a' ) ;
}
}
std:: cout << std:: endl ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y2N0eXBlPgoKCmludCBtYWluKCkgewogICBzdGQ6OnNpemVfdCBjb3VudHNbMzNdID0gezB9OwoKICAgZm9yIChjaGFyIGNoOyBzdGQ6OmNpbiA+PiBjaDsgKSB7CiAgICAgIGlmIChzdGQ6OmlzYWxwaGEoY2gpKSB7CiAgICAgICAgICsrY291bnRzW3N0ZDo6dG9sb3dlcihjaCkgLSAnYSddOwogICAgICB9CiAgIH0KCiAgIGZvciAoc3RkOjpzaXplX3QgaSA9IDMzOyBpLS0gIT0gMDsgKSB7CiAgICAgIGlmIChjb3VudHNbaV0gPj0gMykgewogICAgICAgICBzdGQ6OmNvdXQgPDwgc3RhdGljX2Nhc3Q8Y2hhcj4oaSArICdhJyk7CiAgICAgIH0KICAgfQogICBzdGQ6OmNvdXQgPDwgc3RkOjplbmRsOwp9Cg==
stdin
QWRkaW5nIHBvaW50cyBpbiB0aGlzIG1hbm5lciBjYW4gY2F1c2UgdGhlIHRyZWUgdG8gYmVjb21lIHVuYmFsYW5jZWQsIGxlYWRpbmcgdG8gZGVjcmVhc2VkIHRyZWUgcGVyZm9ybWFuY2UuIFRoZSByYXRlIG9mIHRyZWUgcGVyZm9ybWFuY2UgZGVncmFkYXRpb24gaXMgZGVwZW5kZW50IHVwb24gdGhlIHNwYXRpYWwgZGlzdHJpYnV0aW9uIG9mIHRyZWUgcG9pbnRzIGJlaW5nIGFkZGVkLCBhbmQgdGhlIG51bWJlciBvZiBwb2ludHMgYWRkZWQgaW4gcmVsYXRpb24gdG8gdGhlIHRyZWUgc2l6ZS4gSWYgYSB0cmVlIGJlY29tZXMgdG9vIHVuYmFsYW5jZWQsIGl0IG1heSBuZWVkIHRvIGJlIHJlLWJhbGFuY2VkIHRvIHJlc3RvcmUgdGhlIHBlcmZvcm1hbmNlIG9mIHF1ZXJpZXMgdGhhdCByZWx5IG9uIHRoZSB0cmVlIGJhbGFuY2luZywgc3VjaCBhcyBuZWFyZXN0IG5laWdoYm91ciBzZWFyY2hpbmcu
Adding points in this manner can cause the tree to become unbalanced, leading to decreased tree performance. The rate of tree performance degradation is dependent upon the spatial distribution of tree points being added, and the number of points added in relation to the tree size. If a tree becomes too unbalanced, it may need to be re-balanced to restore the performance of queries that rely on the tree balancing, such as nearest neighbour searching.