#include <iostream>
#include <vector>
#include <queue>
#include <iterator>
#include <ostream>
template<typename T>
std::ostream &operator <<(std::ostream &os, const std::vector<T> &v) {
using namespace std;
copy(v.begin(), v.end(), std::ostream_iterator<T>(os, "\n"));
return os;
}
// Заполняем вектор частот символов
// Сохраняем все символы алфавита в std::set
void get_data(std::vector< double > &alpha){
char c;
double freq;
int overall = 0;
while(std::cin >> c){
alpha[c] += 1;
++overall;
}
for(auto& it : alpha) {
it = it / double(overall);
}
}
int main(){
std::vector< double > alpha(255, 0.0);
get_data(alpha);
std::cout << alpha;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8cXVldWU+CiNpbmNsdWRlIDxpdGVyYXRvcj4KI2luY2x1ZGUgPG9zdHJlYW0+Cgp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgpzdGQ6Om9zdHJlYW0gJm9wZXJhdG9yIDw8KHN0ZDo6b3N0cmVhbSAmb3MsIGNvbnN0IHN0ZDo6dmVjdG9yPFQ+ICZ2KSB7CiAgIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CiAgIGNvcHkodi5iZWdpbigpLCB2LmVuZCgpLCBzdGQ6Om9zdHJlYW1faXRlcmF0b3I8VD4ob3MsICJcbiIpKTsKICAgcmV0dXJuIG9zOwp9CgovLyDQl9Cw0L/QvtC70L3Rj9C10Lwg0LLQtdC60YLQvtGAINGH0LDRgdGC0L7RgiDRgdC40LzQstC+0LvQvtCyCi8vINCh0L7RhdGA0LDQvdGP0LXQvCDQstGB0LUg0YHQuNC80LLQvtC70Ysg0LDQu9GE0LDQstC40YLQsCDQsiBzdGQ6OnNldAp2b2lkIGdldF9kYXRhKHN0ZDo6dmVjdG9yPCBkb3VibGUgPiAmYWxwaGEpewoJY2hhciBjOwoJZG91YmxlIGZyZXE7CgoJaW50IG92ZXJhbGwgPSAwOwoJd2hpbGUoc3RkOjpjaW4gPj4gYyl7CgkJYWxwaGFbY10gKz0gMTsKCQkrK292ZXJhbGw7Cgl9Cglmb3IoYXV0byYgaXQgOiBhbHBoYSkgewoJCWl0ID0gaXQgLyBkb3VibGUob3ZlcmFsbCk7Cgl9Cn0KCgppbnQgbWFpbigpewoJc3RkOjp2ZWN0b3I8IGRvdWJsZSA+IGFscGhhKDI1NSwgMC4wKTsKCglnZXRfZGF0YShhbHBoYSk7CgkKCXN0ZDo6Y291dCA8PCBhbHBoYTsKCQp9