//
//  HRinString.cpp
//  HR
//
//  Created by Admin on 10/02/2017.
//  Copyright © 2017 Jose. All rights reserved.
//

#include <cstring>
#include <string.h>
#include <map>
#include <deque>
#include <queue>
#include <stack>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <algorithm>
#include <vector>
#include <set>
#include <complex>
#include <list>
#include <unordered_map>
#include <set>
#include <unordered_set>
#include <string>

using namespace std;

#define pb push_back
#define all(v) v.begin(),v.end()
#define rall(v) v.rbegin(),v.rend()
#define sz size()
#define rep(i,m) for(int i=0;i<(int)(m);i++)
#define rep2(i,n,m) for(int i=n;i<(int)(m);i++)
#define For(it,c) for(__typeof(c.begin()) it=c.begin();it!=c.end();++it)
#define mem(a,b) memset(a,b,sizeof(a))
#define mp make_pair
#define F first
#define S second
#define pb push_back
#define forn(i, n) for(int i = 0 ; (i) < (n) ; ++i)
#define eprintf(...) fprintf(stderr, __VA_ARGS__),fflush(stderr)
#define pw(x) (1LL<<(x))
#define DBGV(vari) //cout << #vari<< " = "<< (vari) <<endl;

typedef stringstream ss;
typedef pair<int, int> pii;
typedef vector<pii> vpii;
typedef vector<string> vs;
typedef vector<int> vi;
typedef vector<double> vd;
typedef vector<vector<int> > vvi;
typedef long long ll;
typedef long double ld;
typedef vector<ll> vll;
typedef pair<double,double> pdd;
typedef pair<long,long> pll;
typedef vector<pll> vpll;
typedef vector<vpll> vvpll;
//const int oo = (int) 1e9;
const double PI = 2 * acos(0);
//const double eps = 1e-9;
const ll inf=1e10;

int main(){
    int t;cin>>t;
    while(t--){
        //char s[(int)10e4+100];
        string s;
        cin>>s;
        int l=s.size();
        //cin>>s;
        string sol="hackerrank";
        int ind=0;
        bool f=false;
        forn(i,l){
            if(s[i]==sol[ind])ind++;
            if(ind==10)f=true;
        }
        string res=f? "YES" : "NO";
        cout<<res<<endl;
    }
    
}