use std::{io::{self,*}, cmp::Ordering};
fn main(){
let stdin = io::stdin();
for line in stdin.lock().lines() {
let mut v: Vec<u8>= Vec::from(line.unwrap());
let mut c:Vec<u8> = Vec::new();
for i in 0..26{
for j in 0..v.len(){
if ((v[j] - 65u8 == (i as u8)) || (v[j] - 97u8 == (i as u8))){
c.push(v[j]);
}
}
}
let mut i = 0;
let mut j = 0;
while i < v.len() && j < c.len() {
if (v[i] >= 97 && v[i] <= 122) || (v[i] >= 65 && v[i] <= 90) {
v[i] = c[j];
j += 1;
}
i += 1;
}
for i in v {
print!("{}",char::from(i));
}
}
}