Vasya has recently learned to type and log on to the Internet. He immediately entered a chat room and decided to say hello to everybody. Vasya typed the word *s*. It is considered that Vasya managed to say hello if several letters can be deleted from the typed word so that it resulted in the word "hello". For example, if Vasya types the word "ahhellllloou", it will be considered that he said hello, and if he types "hlelo", it will be considered that Vasya got misunderstood and he didn't manage to say hello. Determine whether Vasya managed to say hello by the given word *s*.
The first and only line contains the word *s*, which Vasya typed. This word consisits of small Latin letters, its length is no less that 1 and no more than 100 letters.
# dominoPiling_________
# m,n=map(int,input().split())
# print((m*n)//2)

# bit++__________
# x=0
# n=int(input())
# for i in range(n):
#     o=input()
#     if "+" in o:
#         x+=1
#     else:
#         x-=1
# print(x)


#beautiful matrix
# l=[ [0,0,0],
#     [0,0,1],
#     [2,0,0]]
# for i in range(5):
#     l=list(int(num) for num in input().split())
#     if 1 in l:
#         ans=abs(2-i)+abs(2-l.index(1)) #difference between(gap) row 2 and row
#         #  where 1 is present plus difference between col 2 and col where 1 is present
# print(ans)
    # for j in range(len(l[0])):
        

# petya and strings
# lower() converts all apl. to lower and simly. upper()
# a=input().lower()
# b=input().lower()
# if(a<b):
#     print(-1)
# elif(a>b):
#     print(1)
# else:
#     print(0)


# string Task
# deletes all the vowels,
# inserts a character "." before each consonant,
# replaces all uppercase consonants with corresponding lowercase ones.

# string=input().lower()
# for i in string:
#     if(i=="a" or i=="i" or i=="e" or i=="o" or i=="u" or i=="y"):
#         # string = str(string.maketrans(i, " "))
#         # print(string.translate(string))
#         # doesnt work......gives this output
#         # iskfja
#         # {105: 32}
#         # {97: 32}
#         string=string.replace(i,"")
# for i in set(string):
#     string=string.replace(i,"."+i)
# print(string)



# helpful maths
# l=list(num for num in input().split("+"))
# l.sort()
# for i in range(len(l)):
#     if(i<len(l)-1):
#         print(l[i],end="+")
#     else:
#         print(l[i])


# word capitalisation
# s=input()
# s=s[0].upper()+s[1:]
# print(s)

# stones on the table
# input()
# s=input()
# count=0
# for i in range(len(s)-1):
#     if(s[i]==s[i+1]):
#         count+=1
# print(count)

# boy or girl
# s=set(input())
# if(len(s)%2!=0):
#     print("IGNORE HIM!")
# else:
#     print("CHAT WITH HER!")


# young physicist
#           [1, 12, 3]
#           [6, 46, 4]
#           [4, 19, 3]
# sum of col should be 0s
# n=int(input())
# suma=0
# sumb=0
# sumc=0
# for i in range(n):
#     a,b,c=map(int,input().split())
#     suma+=a
#     sumb+=b
#     sumc+=c
# if(suma==0 and sumb==0 and sumc==0):
#     print("YES")
# else:
#     print("NO")

# football
# s=input()
# if ("1111111") in s:
#     print("YES")
# elif ("0000000") in s:
#     print("YES")
# else:
#     print("NO")


# bob and limak
# import math
# a,b=map(int,input().split())
# print((math.floor(math.log(b/a,1.5)))+1)

# for (3^x)*a=(2^x)*b
# ==> 3^x/2^x=b/a
# ==>(3/2)^x=b/a
# ==> x=log(b/a)to the base (3/2)=1.5
# take floor after converting to log, if u do it before the log values change, also add 1 ,as u found the x which is the no.of yrs
# after which limak and bob weigh SAME, but u need it to be strictly higher, so it would be an yr more


# soldier and bananas
# A soldier wants to buy w bananas in the shop. He has to pay k dollars for the first banana, 
# 2k dollars for the second one and so on (in other words, he has to pay i·k dollars for the i-th banana).
# He has n dollars. How many dollars does he have to borrow from his friend soldier to buy w bananas?

# k,n,w=map(int,input().split())
# needs= (k*w*(w+1))//2
# if(n<needs):
#     print(needs-n)
# else:
#     print(0)



# elephant

# b=int(input())
# i=5
# steps=0
# while(i>=1 and b>0):
#     if(b>=i):
#         steps+=b//i
#         b=b%i
#     else:
#         i-=1
# print(steps)

# wrong subtraction
# n,k=map(int,input().split())
# while(k>0):
#     if(n%10==0):
#         n=n//10
#     else:
#         n-=1
#     k-=1
# print(n)

# Q
# n=input()
# u=0
# l=0
# for i in n:
#     if(i.islower()):
#         l+=1
#     else:
#         u+=1
# if(l>=u):
#     n=n.lower()
# elif(l<u):
#     n=n.upper()
# print(n)


#wrong---chat room
# n=input()
# # if "hello" in n:
# if(n.count("l")>=2 and len(n)>=5):
#     # if(n.index("h")<n.index("e") and n.index("l")<n.index("o")): doesnt work for kseehoollellooo
    
#         print("YES")
# else:
#     print("NO")

# right-----
word ="hello"
# s="pnnepelqomhhheollvlo"
s=input()

p = 0
wi = 0
for wi in range(len(word)):
    if wi < 5:
        p = s.find(word[wi], p) +1
        # print(p)
        if p == 0:
            break
if wi == 4:
    print("YES")
else:
    print("NO")