#include <bits/stdc++.h>
using namespace std;

#define REP(i,n) for(int i=0;i<n;i++)
#define rep(i,n) for(int i=0;i<n;i++)
#define INF 1<<29
#define LINF LLONG_MAX/3
#define MP make_pair
#define PB push_back
#define EB emplace_back
#define ALL(v) (v).begin(),(v).end()
#define debug(x) cerr<<#x<<":"<<x<<endl
#define debug2(x,y) cerr<<#x<<","<<#y":"<<x<<","<<y<<endl
#define CININIT cin.tie(0),ios::sync_with_stdio(false)
template<typename T> ostream& operator<<(ostream& os,const vector<T>& vec){ os << "["; for(const auto& v : vec){ os << v << ","; } os << "]"; return os; }

typedef long long ll;
typedef unsigned long long ull;
typedef pair<int,int> pii;
typedef vector<int> vi;
typedef vector<vi> vvi;

int main(){
    string n;
    cin>>n;
    int N=n.size();
    vi ans;
    while(n.size()){
        if(n.substr(0,4)=="hamu"){
            ans.push_back(1);
            n = n.substr(4);
        }else{
            ans.push_back(0);
            n = n.substr(3);
        }
    }

    if(ans.size()==1 and ans[0]==0){
        cout << "ham" << endl;
        return 0;
    }

    ans.push_back(0);
    bool f=false;
    for(int i=0;i<ans.size();i++){
        if(ans[i]==1) f=true;
        if(!f) continue;
        if(ans[i]==1) cout << "hamu";
        else cout << "ham";
    }
    cout << endl;
}