peterverebics/CodeNet_Python_118 huggingface dataset:
import re
s = input()

if re.match("(hi)+",s):
  print("Yes")
else:
  print("No")
s = input()

if 'hi' in s:
    print('No')
else:
    print('Yes')
import re

pattern = re.compile("(hi)+")
s = input()
print("YES" if pattern.fullmatch(s) else "NO")
S=input()
while len(S)>=2:
  if S[0:2]=='hi':
    S=S[2:]
  else:
    break
if len(S)==0:
  print('YES')
else:
  print('NO')
import re

try:
  s = input()
except:
  print("No")
  
s = s.replace('hii', '')
#print(s)
if "hii" in s:
  print("No")
else:
  if "hi" in s:
    print("Yes")
  else: print("No")
str = input()
yes = str.lower().find("hi")
print("Yes" if yes != -1 else "No")
s = input()
lens = len(s)

# print(lens)
if (lens <= 2 or lens % 2 == 1):
    print("No")
    exit(0)

for i in range(0, lens, 2):
    if (not (s[i] == 'h' and s[i + 1] == 'i')):
        print("No")
        exit(0)
print("Yes")
S = str(input())
ans = 'Yes'
for i in range(0,len(S)-1,2):
  if S[i]+S[i+1] != 'hi':
    ans = 'No'
    break

print(ans)
S=str(input())
if S.count('hi')>=1:
  print('Yes')
else:
  print('No')
S = input()
cout = S.count('hi')
coutminus = S.count('hii')
if cout - coutminus > 0:
  print('Yes')
else:
  print('No')
import sys
text = input()
flag = 0
for s in text:
    if flag == 0 and s == "h":
        flag = 1
    elif flag ==1 and s == "i":
        flag = 0
    else:
        print("No")
        sys.exit()
print("Yes")
s = input()
sS = s.replace('hi', 'H', 50)
if 'H' in sS:
  print('Yes')
else:
  print('No')
s = input()
strJudge = 'No'
if 'hi' in s:
    strJudge = 'Yes'

if 'hii' in s:
    strJudge = 'No'

print(strJudge)
s  = input().replace('hii', '')
if s.count('hi') > 0:
    print('Yes')
else:
    print('No')
n = input()
flag = True
for i in range(len(n)-1):
    if n[i] == 'h' and n[i+1] == 'i':
        continue
    elif n[i] == 'i' and n[i+1] == 'h':
        continue
    else:
        flag = False
        break
if flag:
    print('Yes')
else:
    print('No')
import sys
import bisect
MAX_INT = int(10e15)
MIN_INT = -MAX_INT
mod = 1000000007
sys.setrecursionlimit(1000000)
def IL(): return list(map(int,input().split()))
def SL(): return input().split()
def I(): return int(sys.stdin.readline())
def S(): return input()

s = S()
if s.count("hi"):
  print("Yes")
else:
  print("No")
s = str(input())
if 'hi' in s:
  print('Yes')
else:
  print('No')
S=list(input())
a=0
for i in range(len(S)-1):
    if S[i]=="h":
        if S[i+1]=="i":
            a=1
            break
if a==1:
    print("Yes")
else:
    print("No")
s=input()
count=0

for i in range(len(s)-1):
  if s[i]=="h" and s[i+1]=="i":
    count+=1
    
if count>=1:
  print("Yes")
else:
  print("No")
if __name__ == '__main__':
    S=input()
    i=0
    j=len(S)
    print(j)
    if j/2==0:
        for l in range(0,len(S),2):
            i=0
            if(S[l]=='h' and S[l+1]=='i'):
                i=1
    if i==1:
        print('Yes')
    else:
        print('NO')
s = input()

if 'hi' in s:
    print("Yes")
else:
    print("No")
s = input()

f = True
for i in s:
    if f:
        if i != 'h':
            break
        else:
            f = False
    else:
        if i != 'i':
            break
        else:
            f = True
else:
    print('Yes')
    exit()
print('No')
S = str(input())
 
S.replace("hi", "")
if S == "":
  print("Yes")
else:
  print("No")
S = input()
a = True
for i in range(len(S)//2):
    if len(S) % 2 != 0:
        a = False 
        break
    else:
        if S[i] != 'h' or S[i+1] != 'i':
            a = False

if a: 
    print('Yes')
else: 
    print('No')
S = input()

if len(S) == 1:
  print('No')
elif len(S) == 2:
  if S == 'hi':
    print('Yes')
  else:
    print('No')
else:
  flag = 0
  i = 0
  while i < len(S)-1:
    if S[i:i+2] == 'hi':
      flag = 1
    else:
      flag = 0
      break
    i += 2
  if flag == 1:
    print('Yes')
  else:
    print('No')
S = list(input())
len = len(S)
flag = 1
s = S[0]


for i in range(1, len):
    if s == 'h':
        if S[i] != 'i':
            flag = 0
            break
    if s == 'i':
        if S[i] != 'h':
            flag = 0
            break
    s = S[i]

if flag == 1:
    print('Yes')
else:
    print('No')
import re
S = input()
word = '(hi)+'
if re.match(word,S):
    print('Yes')
else:
    print('No')
s = str(input())
if 'hi' in s:
    print('Yes')
else:
    print('No')
s=list(input())
h=s.count("h")
i=s.count("i")
x=len(s)//2
if x==h and x==i and len(s)%2==0:
    print("Yes")
else:
    print("No")
def ishitach(str):

    length_str = len(str)

    if length_str < len('hi'):
        return 'No'
    else:
        start_index = 0
        end_index = len('hi')
        while end_index <= length_str:
            if str[start_index:end_index] == 'hi':
                pass
            else:
                return 'No'

            start_index = start_index + 2
            end_index = end_index + 2

    return 'Yes'


if __name__ == '__main__':
    print(ishitach(str(input())))
from copy import deepcopy
string_in = input()
count_num = 0
for i in range(10):
  count_num += string_in.count('%d'%(i))
if count_num==0:
  check_str = "hi"        
  max_count = string_in.count(check_str)
  check_obj = ["hi"*i for i in range(1,max_count+1)][::-1]
  string_in4 = deepcopy(string_in)
  count = 0
  for i in range(len(check_obj)):
    i_str = str(check_obj[i])
    string_in4 = string_in4.replace(i_str, '%d'%(i))
    count += string_in4.count('%d'%(i))
  if count==0:
    print("No")
  else:
    print("Yes")
else:
  print("Yes")
S = input()

while len(S) >= 2:
    if S[0:1]== 'hi':
        S==S[2:]
    else:
        break
if len(S)==0:
    print('Yes')
else:
    print('No')
S = input()
mituke = S.find("h")
if mituke == -1 or mituke == len(S)-1 :
    print("No")
elif S[mituke +1] == "i" :
    print("Yes")
else :
    print("No")
s = str(input())
if 'hi' in s:
    if 'hii' not in s:
        if 'ihi' not in s:
            print('Yes')
        else:
            print('No')
    else:
        print('No')
else:
    print('No')
s=input()
flg=0
if len(s)%2!=0:
        print("No")
else:
    for i in range(0,len(s)-1,2):
        if s[i:i+2]!="hi":
            flg +=1
            break
        continue
if flg==0:
    print("Yes")
else:
    print("No")
S = input()
if len(S) == 1:
    print('No')
elif len(S) == 2:
    if S[0] == 'h' and S[1] == 'i':
        print('Yes')
    else:
        print('No')
else:
    flag = False
    for i in range(len(S)-2):
        if S[i] == 'h' and S[i + 1] == 'i' and S[i + 2] != 'i':
            flag = True
            break
    if flag:
        print('Yes')
    else:
        print('No')
s = input()
strJudge = 'No'
if 'hi' in s:
    strJudge = 'Yes'

if len(s) == 3:
    s = s.replace('hi','')
    
if len(s) == 1:
    strJudge = 'No'

print(strJudge)
def main(S):
    if len(S) / 2 != 0:
        print('No')
        return
        
    for ind in range(0, len(S), 2):
        h = S[ind]
        i = S[ind+1]
        if h != 'h' or i != 'i':
            print('No')
            return
    print('Yes')
    return

S = input()
main(S)
s = input()
if s[0:2] == "hi":
    print("Yes")
else:
    print("No")
a  = input()
k = a.count('hi')
if len(a) > 3 and len(a)//2 == k:
  print('Yes')
elif a == 'hii':
  print('No')
else:
  print('No')
# -*- coding: utf-8 -*-

S = input()

if "hi" in S:
    print("Yes")
else:
    print("No")
import re
S = input()
if re.match(r'^(hi)*',S):
    print('Yes')
else:
    print('No')
flag = True
S = input()
if len(S) < 2: flag = False
for enum, i in enumerate(S):
    if enum % 2 == 0:
        if i != 'h':
            flag = False
            break
    else:
        if i != 'i':
            flag = False
            break
if flag:
    print('Yes')
else:
    print('No')
s = input()

if "hi" in s:
  print("Yes")
else:
  print("No")
s = input()
strJudge = 'No'
if 'hi' in s:
    strJudge = 'Yse'

if 'hii' in s:
    strJudge = 'No'

print(strJudge)
s = input()
s_len = len(s)
if s_len % 2:
  print("No")
else:
  prev = 0
  count = 0
  for i in range(1, (s_len//2)+1):
    if s[prev:i*2] != "hi":
      print("No")
      break
    else:
      count += 1
      prev = i * 2
  if count == s_len:
    print("Yes")
import re
index = re.match(r'(hi)+', input())
if index:
    print("Yes")
else:
    print("No")
print('NYoe s'[('hi'*100).startswith(input())::2])
S = input()
flag = 0
for i in range(len(S)):
    if S[i:i+2] == "hi":
        flag = 1
if flag == 0:
    print("No")
else:
    print("Yes")
S = str(input().strip())
target = 'hi'
index = S.find(target)
if 10 >index > -1:
    print('Yes')
else:
    print('No')
index = -1
S=input()
ans="No"

if len(S) == 1:
  ans="No"
else:
  for i in range(len(S)-1):
    if S[i] == "h" and S[i+1] == "i":
      ans="Yes"
      #print(i)
      break

print(ans)
S = input()
if S.startswith("hi") and "hii" not in S:
    print("Yes")
else:
    print("No")
h = input().replace("hi", "")
o = "Yes" if len(h) else "No"
print(o)
s = input()
for i in range(1,6):
    if 'hi'*i in s:
        print('Yes')
print('No')
s=list(str(input()))
for i in range(len(s)):
  if (i%2==0 and s[i]!="h") or (i%2!=0 and s[i]!="i"):
    print("No")
    break
else:
  print("Yes")
S = input()
count = 0
count_h = 0
count_i = 0
frag = 0
for i in range(len(S)-1):
  if S[i] == 'h' and S[i+1] == 'i':
    count = 1
for i in range(len(S)):
  if S[i] == 'h':
    count_h = count_h+1
  elif S[i] == 'i':
    count_i = count_i+1
if S[0] != 'h':
  frag = 1
if count == 1 and len(S)%2 == 0 and count_h == count_i and frag == 0:
  print('Yes')
else:
  print('No')
str = input()
yes = True
if len(str) < 2:
  yes = False
for i in range(len(str)):
  if (i % 2 == 0 and str[i] != 'h') or (i % 2 == 1 and str[i] != 'i'):
    yes = False
    break
print("Yes" if yes else "No")
a = input()
ok = True
if len(a) % 2 == 0:
    for i in range(0, len(a)//2 + 1, 2):
        if a[i:i + 2] != "hi":
            ok = False
            break
else:
    for i in range(0, len(a)//2 + 2, 2):
        if a[i:i + 2] != "hi":
            ok = False
            break


if ok:
    print("Yes")
else:
    print("No")
def judge(check_string):

    HITACH_STRING = "hi"

    if not((1 <= len(check_string)) and (len(check_string) <= 10)):
        print("No")

    if HITACH_STRING in check_string:
        print("Yes")
    else:
        print("No")


if __name__ == "__main__":
    hitachi_string = input()
    judge(hitachi_string)
S=input()

def No():
    print("No")
def Yes():
    print("Yes")

if len(S)%2!=0:
    No()
if len(S)==0:
    No()
if all([S[2*i:2*i+2]=="hi" for i in range(int(len(S)//2))]):
    Yes()
else:
    No()
s=input().count("hi")
if s>=1:
  print("Yes")
else:
  print("No")
import sys, math
def input():
    return sys.stdin.readline()[:-1]
from itertools import permutations, combinations
from collections import defaultdict, Counter, deque
from math import factorial
from bisect import bisect_left #bisect_left(list, value)
#from fractions import gcd
enu = enumerate

sys.setrecursionlimit(10**7)
S = input()

if 'hi' in S:
    print('Yes')
else:
    print('No')
S = str(input())

flag = False
if len(S) % 2 == 1:
    flag = False
else:
    for count in range(int(len(S)/2)):
        if S[count*2] != "h" and S[count*2 + 1] != "i":
            flag = False
            break
        else:
            flag = True

if flag == True:
    print("Yes")
else:
    print("No")
S = input()

for i in range(len(S)):
    if i % 2 == 0:
        if S[i] != "h":
            print("No")
            exit()
    else:
        if S[i] != "i":
            print("No")
            exit()

print("Yes")
s = input()

if "hi" in s:
    print('Yes')
else:
    print('No')
S = input()
b = True

for i in range(1, len(S), 2):
	if S[i-1] == 'h':
		if S[i] == 'i':
			continue
	b = False

if b:
	print('Yes')
else:
	print('No')
s = input()

if len(s) < 2:
  print('No')
else:
  ans = "Yes"
  for i in range(len(s)):
    if i % 2 == 0 and s[i] != 'h':
      ans = "No"
      break
    if i % 2 == 1 and s[i] != 'i':
      ans = "No"
      break

  print(ans)
s=input()

if (s.count("hi")>=1):
  print("Yes")
else:
  print("No")
import sys

stdin = sys.stdin

ni = lambda: int(ns())
na = lambda: list(map(int, stdin.readline().split()))
ns = lambda: stdin.readline()

s = input()
if "hi" in s:
    print("Yes")
else:
    print("No")
S = input()
judge = True
for i in range(len(S)):
  if i%2==0:
    if S[i]=='h':
      continue
    else:
      judge=False
      break
  else:
    if S[i]=='i':
      continue
    else:
      judge=False
      break
      
if judge:
  print('Yes')
else:
  print('No')
S = input()

for i in range(len(S)):
    if i % 2 ==0:
        if S[i] != 'h':
            print('No')
            exit()
    else:
        if S[i] != 'i':
            print('No')
            exit()

print('Yes')
import numpy as np
import fractions

s=str(input())
for i in range(len(s)-1):
    if(i%2==0):
        if(s[i]!='h' or s[i+1]!='i'):
            print("No")
            exit(0)
    if(s[i]!='h' and s[i]!='i'):
        print("No")
        exit(0)
if(s[len(s)-1]!='h' and s[len(s)-1]!='i'):
    print("No")
    exit(0)

print("Yes")
from functools import reduce
from fractions import gcd
import math
import bisect
import itertools
import sys
sys.setrecursionlimit(10**7)
input = sys.stdin.readline
INF = float("inf")


def main():
    S = input()[:-1]
    for i in range(len(S)):
        if S[i:i+2] == "hi":
            print("Yes")
            return
    print("No")


if __name__ == '__main__':
    main()
S = input()
flag = 1
for i in range(len(S)-1,2):
  if not(S[i]=='h' and S[i+1]=='i'):
    flag = 0
    break
    
if flag:
  print("Yes")
else:
  print("No")
s= input()

if "hi" in s:
    print("Yes")
else:
    print("No")
import re

s = 'hi'
flag = True

s_array = s.split('hi')
    
for list in s_array:
    res = re.match('[a-z0-9]', list)
    
    if res and len(res.group()) > 0 :
        flag = False
        break
            
if flag:
    print('Yes')
else:
    print('No')
s = list(input())
for i, x in enumerate(s):
    if (i % 2 and x != "i") or (i % 2 == 0 and x != "h"):
        print("No"); break
else: print("Yes")
s=input()
a=0
for i in range(len(s)-1):
  if s[i]=="h":
    if s[i+1]=="i":
      a=1
if a==0:
  print("No")
else:
  print("Yes")
try:
  s = input()
except:
  print("No")

if "hi" in s:
  print("Yes")
else: print("No")
s = str(input())

if 'hi' in s:
    ans = 'Yes'
else:
    ans = 'No'

print(ans)
s=input()
if 'hi'in s and 'hii' not in s and 'hhi' not in s :
    print('Yes')
else:
    print('No')
s = input()

if 'hi' in s:
  print('Yes')
else:
  print('No')
input = input()

result = "Yes"
isHi = False
for i in range(len(input)-1):
    if isHi:
        isHi = False
        continue;

    str = input[i] + input[i+1]
    if str != "hi":
        result = "No"
        break

    isHi = True

print(result)
n=input()
if n.find('hi') != -1:
    print('Yes')
else:
    print('No')
s = input()
s = list(s)

a = 0
if len(s) < 2:
  a = 0
elif len(s) == 2:
  if s[0] == 'h' and s[1] == 'i':
    a = 1
  else:
    a = 0
elif len(s) > 2:
  for i in range(len(s)-2):
    if s[i] == 'h':
      if s[i+1] == 'i' and s[i+2] != 'i':
        a += 1
        break
    
if a == 1:
  print('Yes')
else:
  print('No')
import re

try:
  s = input()
except:
  print("No")
  
s = s.replace('hii', 'xxx')
#print(s)

if "hi" in s:
  print("Yes")
else: print("No")
n = input()

ans = "No"
if n in "hi":
    ans = "Yes"
print(ans)
import re
S = input()
if re.match(r'(hi)(hi)*',S):
    print('Yes')
else:
    print('No')
S = input()
idx = 0
try:
    while True:
        idx = S.index('hi', idx)
        if idx == len(S)-2 or S[idx+1] != 'i':
            print('Yes')
            break     
        else:
            idx += 1
except:
    print('No')
import sys
S = list(input())
for i in range(len(S)):
    if i%2 == 0:
        if S[i] != 'h':
            print("No")
            sys.exit()
    else:
        if S[i] != 'i':
            print("No")
            sys.exit()
print("Yes")
text = input()

def checkHitachi(text):
  check_i = False
  for i in range(len(text)):
    if check_i:
      if (text[i] != 'i'):
        return 'No'
      else:
        check_i = False
    else:
      if (text[i] != 'h'):
        return 'No'
      else:
        check_i = True
  return 'Yes'


print(checkHitachi(text))
if(input()=="hitachi"):
    print("Yes")
else:
    print("No")
# coding: utf-8
S=list(input())
flg=True

for i in range(len(S)):
    if i%2==0:
        if S[i]!="h":
            flg=False
    else:
        if S[i]!="i":
            flg=False

if flg:
    print("Yes")
else:
    print("No")
# -*- coding:utf-8 -*-

def solve():
    S = input()
    if "hi" in S:
        print("Yes")
    else:
        print("No")

if __name__ == "__main__":
    solve()
import sys
read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines
sys.setrecursionlimit(10 ** 7)

s = readline().rstrip().decode()
if 'hi' in s:
    print('Yes')
else:
    print('No')
chk_str = input()
if chk_str.find('hi')==len(chk_str)/2:
    print('Yes')
else:
    print('No')
#!/usr/bin/env python3
ng = True
s = input()
for i in range(1, 5):
    if s=="hi"*i: ng = False
print("YNeos"[ng::2])
S=list(input())
tmp=""
ans="No"
for s in S:
    if(tmp==""):
        tmp=s
    else:
        if(s=='i' and tmp=='h'):
            ans="Yes"
            tmp=''
        else:
            tmp=""
            ans="No"
print(ans)
hitatistr = input()
count = 0
flag = "ok"
for i in hitatistr:
  if count % 2 == 0:
    if i != "h":
      flag = "ng"
      break
  else:
    if i != "i":
      flag = "ng"
  count = count + 1
if flag == "ok" and count >= 2:
  print("Yes")
else:
  print("No")
s = input()
flag = False
for i in range(len(s)-1):
    if s[i] == "h" and s[i+1] == "i":
        if i < len(s)-2:
            if s[i+2] == "i":
                pass
        elif i < len(s)-2:
            if s[i+2] != "i":
                flag = True
                break
        else:
            flag = True
if flag:
    print("Yes")
else:
    print("No")
S = str(input())
if "hi" == S:
  print("Yes")
elif "hihi" == S:
  print("Yes")
elif "hihihi" == S:
  print("Yes")
elif "hihihihi" == S:
  print("Yes")
else:
  print("No")
S = input()
S.replace("hii", "")
cout = S.count('hi')
if cout > 0:
  print('Yes')
else:
  print('No')
S = input()

def getHi(S):
    for i in range(len(S)-1):
        if S[i] + S[i+1] != "hi":
            return"No"
    return "Yes"

print(getHi(S))
# coding: utf-8
# Your code here!

import sys
sys.setrecursionlimit(10**6)
readline = sys.stdin.readline
read = sys.stdin.read


#n,a = [int(i) for i in read().split()]

s = input()
s = s.replace("hi","X")
if len(set(s)) == 1:
    print("Yes")
else:
    print("No")
s=input()
if "hi" in s:
	print("Yes")
else:
	print("No")
import sys
#input = sys.stdin.readline
S=input()
ans=[]
count =0 
for i in range(len(S)):
    ans.append(S[i])
if not "h" in S or not "i" in S:
    print("No")
else:
    print("Yes")
S = input()

if 'hi' in S:
    print('Yes')
else:
    print('No')
s = input()

if "hi" in s:
	print("Yes")
else:
	print("No")
s = input()

a = 0
if 'hi' in s:
  if 'hii' not in s:
    if 'hhi' not in s:
      a += 1
    
if a == 1:
  print('Yes')
else:
  print('No')
s = list(input())
for i in range(len(s)-2):
  if s[i]=='h' and s[i+1]=='i' and s[i+2]!='i':
    print('Yes')
    exit()
print('No')
import re

s = input()

m = re.match(r'(hi)*', s)
if m.group(0):
  print("Yes")
else:
  print("No")
S = input().strip()

if 'hi' in S:
    print('Yes')
else:
    print('No')
import math
import sys

input = sys.stdin.readline


def main():
    s = input().strip()
    for idx in range(len(s)):
        if idx % 2 == 0 and s[idx] != 'h':
            print('No')
            return
        elif idx % 2 == 1 and s[idx] != 'i':
            print('No')
            return
    print('Yes')


if __name__ == '__main__':
    main()
#!/usr/bin/env python3

input = str(input())
if 'hi' in input:
    print('Yes')
else:
    print('No')
s = input()

if "hi" in s:
  print("Yes")
else: print("No")
S = input()

X = ["hi" * i for i in range(5)]
if S in X:
    print("Yes")
else:
    print("No")
a = input()

ans = "No"
for i in range(len(a)-1):
    if a[i] == "h" and a[i+1] == "i":
        ans = "Yes"

print(ans)
s=list(input())
ans=0
for i in range(len(s)-2):
    if s[i] =="h":
        if s[i+1] == "i":
            if s[i+2] != "i":
                ans+=1
                break

if s[len(s)-2] =="h":
    if s[len(s)-1] =="i":
        ans+=1

if ans > 0:
    print("Yes")
else:
    print("No")
S=input()

if 'hi' in S:
    print("Yes")
else:
    print("No")
#!/usr/bin/env python3

def main():
    S = input()

    for i in range(1, 5):
        h = 'hi' * i
        if S == h:
            print('Yes')
            return
    else:
        print('No')

main()
S=input()

Slist=list(S)

flag=True

for i, c in enumerate(S):
  if i%2==0 and c!='h':
    flag=False
    break
  if i%2==1 and c!='i':
    flag=False
    break
if flag:
  print('Yes')
else:
  print('No')
s=input()
if 'hi'in s and 'hii' not in s:
    print('Yes')
else:
    print('No')
s = input()

if set(s) == {'h', 'i'} and len(s) <= 10:
    print("Yes")
else:
    print("No")
S=input()

def No():
    print("No")
def Yes():
    print("Yes")

if len(S)%2!=0:
    No()
if all([S[2*i:2*i+2]=="hi" for i in range(int(len(S)//2))]):
    Yes()
else:
    No()
s = input()
f = 0
for i in range(len(s)):
    if (i%2 == 0 and s[i] != "h") or (i%2 == 1 and s[i] != "i"):
        print("No")
        f = 1
        break
if f == 0:
    print("Yes")
s=input()

if 'hi' in s:
    print('Yes')
else:
    print('No')
s = input()
flag = 1
for i in range(0, len(s)-1):
  if(s[i] == "h" and s[i+1] != "i"):
    flag = 0
  elif(s[i] == "i" and s[i+1] != "h"):
    flag =0
if(flag == 0):
  print("No")
else:
  print("Yes")
s = input()
s.replace("hi", "")
print("Yes" if s=="" else "No")
S = input()
if 'hi' in S and 'hii' not in S:
    print('Yes')
else:
    print("No")
s = input()
if len(s) % 2 == 1:
    print("No")

else:
    flag = False
    for i in range(0, len(s) // 2, 2):
        if s[2 * i: (i+2)] != "hi":
            flag = True
            break
    
    if flag:
        print("No")
    else:
        print("Yes")
str = input()

if str == "hi" or "hihi" or "hihihi" or "hihihihi" or "hihihihihi":
  print("Yes")
else:
  print("No")
s = str((input()))

for i in range(len(s) - 1):
    if s[i] == "h" and s[i+1] == "i":
        print('Yes')
        exit()
print('No')
import sys
input = sys.stdin.readline

S=input().strip()

if "hi" in S:
    print("Yes")
else:
    print("No")
# coding: utf-8
# Your code here!

import re

input = input()

pattern = '^(hi)+$'

# compile後match
repatter = re.compile(pattern)
result = repatter.fullmatch(input)

if result is not None:
    print("yes")
else:
    print("no")
S=list(str(input()))

for i in range(len(S)):
    if i%2 == 0 and S[i]!="h":
        print("No")
        exit()
    if i%2 != 0 and S[i]!="i":
        print("No")
        exit()
print("Yes")
s=input()
n=len(s)
for i in range(n-1):
  if s[i]=="h" and s[i+1]=="i":
    if i==n-2:
      print("Yes")
      exit()
    elif s[i+2]!="i":
      print("Yes")
      exit()
print("No")
s = input()
flag = False
try:
    if "hi" in s:
        if s[s.find("hi")+2] == "i":
            flag = False
        elif s[s.find("hi")-1] == "h":
            flag = False
        else:
            flag = True
    else:
        flag = False
except IndexError:
    pass
if flag == False:
    print("No")
else:
    print("Yes")
# -*- coding: utf-8 -*-
 
import math
import itertools
import sys
import copy
#import numpy as np
 
# 入力
#A, B, C, D = map(int, input().split())
#L = list(map(int, input().split()))
#S = list(str(input()))
#N = int(input())
#S = str(input())

S = str(input())
if "hi" in S :
  print("Yes")
else :
  print("No")
# -*- coding: utf-8 -*-
# 整数の入力
a = list(input())
#print(a)

hFlag=False
for i in range(len(a)):
    if not hFlag:
        if a[i]=='h':
            hFlag=True
        else:
            print('No')
            break
    else:
        if a[i]=='i':
            hFlag=False
        else:
            print('No')
            break
    if i ==len(a)-1: print('Yes')
input = input()
# input = "hihi"
result = "Yes"
for i in range(len(input)-1):
    if input[i] == "i":
        continue;

    str = input[i] + input[i+1]
    if str != "hi":
        result = "No"
        break

print(result)