using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace ConsoleApplication2
{
    class Program
    {
        private static void Main(string[] args)
        {
            string str = Console.ReadLine();
            str = str.ToLower();
            int k = 0;
            bool flag = false;

            for(int i = 0; i < str.Length; i++)
            {
                if (k == 0 && str[i] == 'h')
                {
                    k++;
                }
                else if (k == 1 && str[i] == 'e')
                {
                    k++;
                }
                else if (k == 2 && str[i] == 'l')
                {
                    k++;
                }
                else if (k == 3 && str[i] == 'l')
                {
                    k++;
                }
                else if (k == 4 && str[i] == 'o')
                {
                    k++;
                    flag = true;
                    break;
                }
            }

            Console.WriteLine(flag == true ? "YES" : "NO");
        }
    }
}

using System;

namespace CodeForces
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            bool canHello = false;

            if (Contains(input, 'h'))
            {
                int index = IndexOf(input, 'h');
                string _input = Substring(input, index + 1);

                if (Contains(_input, 'e'))
                {
                    index = IndexOf(_input, 'e');
                    _input = Substring(_input, index + 1);

                    if (Contains(_input, 'l'))
                    {
                        index = IndexOf(_input, 'l');
                        _input = Substring(_input, index + 1);

                        if (Contains(_input, 'l'))
                        {
                            index = IndexOf(_input, 'l');
                            _input = Substring(_input, index + 1);

                            if (Contains(_input, 'o'))
                            {
                                canHello = true;
                            }
                        }
                    }
                }
            }

            if (canHello) System.Console.WriteLine("YES");
            else System.Console.WriteLine("NO");
        }

        static string Substring(string s, int index)
        {
            string output = "";

            for (int i = index; i < s.Length; i++)
            {
                output += s[i];
            }

            return output;
        }

        static int IndexOf(string s, char c)
        {
            for (int i = 0; i < s.Length; i++)
            {
                if (c == s[i]) return i;
            }

            return -1;
        }

        static bool Contains(string s, char c)
        {
            foreach (char x in s)
            {
                if (x == c) return true;
            }

            return false;
        }

        static bool IsLuckyNumber(int number)
        {
            bool lucky = false;

            while (number != 0)
            {
                int lastDigit = LastDigit(number);
                number /= 10;

                if (lastDigit != 4 || lastDigit != 7) return false;
                else lucky = true;
            }

            if (lucky) return lucky;

            for (int i = number-1; i > 0; i--)
            {
                if (number % i == 0 && IsLuckyNumber(i))
                    return true;
            }

            return false;
        }

        static int LastDigit(int number)
        {
            return 0;
        }

        static char ToLower(char c)
        {
            return (c >= 'A' && c <='Z') ? (char)(c + 32) : c;
        }

        static bool Contains(char[] arr, char c)
        {
            foreach (char x in arr)
            {
                if (x == c) return true;
            }

            return false;
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace Implemetation
{
    class Program
    {
        static void Main(string[] args)
        {
            //string input = Console.ReadLine();
            //Console.WriteLine(Football(input));
            //int result=Petya_and_Strings(Console.ReadLine(), Console.ReadLine());
            //Console.WriteLine(result);
            //Helpful_Maths(Console.ReadLine());
            //Word_Capitalization(Console.ReadLine());
            //Taxi(int.Parse(Console.ReadLine()));
            //Console.WriteLine(Math.Ceiling((double)13/5));

            //Console.WriteLine(Regex.IsMatch(Console.ReadLine(), @"[1-4]((\s[1-4])+)?"));

            string text = Console.ReadLine();
            string res=Chat_Room(text);
            Console.WriteLine(res.Contains("hello") ? "YES" : "NO");
        }
        static string Chat_Room(string text)
        {

            if (!Regex.IsMatch(text, @"^[a-z]{1,100}$")) return "";

            //string Result = "";
            Queue<char> StackResult = new Queue<char>();

            char[] word = { 'h', 'e', 'l', 'l', 'o' };
            int position = 0;

            foreach (char c in text)
            {

                if (word[position] == c)
                {
                    //Result += c;
                    StackResult.Enqueue(c);
                    position++;
                    if (position == word.Length) break;
                }
                else
                {
                    //if (Result != "")
                    if (StackResult.Count > 0)
                    {
                        if (StackResult.Peek() == c) continue;
                        //if (Result[position - 1] == c) continue;
                        //else break;
                    }
                }

            }

            //Console.WriteLine(Result.Contains("hello")?"YES":"NO");
            //Console.WriteLine(Result.Equals("hello")?"YES":"NO");
            return string.Join("", StackResult.ToArray());

        }
        static void Taxi(int input)
        {
            if (input < 1 || input > Math.Pow(10, 5)) return;
            string strnumbers = Console.ReadLine();
            if (!Regex.IsMatch(strnumbers, @"[1-4](\s[1-4])+")) return;

            int[] nums=strnumbers.Split(' ').Select(num=>int.Parse(num)).ToArray();
            if (nums.Length != input) return;

            Console.WriteLine(Math.Ceiling((double)nums.Sum() / 4));

        }
        static void Word_Capitalization(string input)
        {
            if (input.Length > Math.Pow(10, 3)) return;

            string result;

            if (input[0] >= 97)
            {
                char c = input[0];
                int cint = c - 32;
                char res = (char)cint;
                result = res + input.Substring(1, input.Length - 1);
                Console.WriteLine(result);
            }
            else
            {
                Console.WriteLine(input);
            }
        }
        static void Helpful_Maths(string input)
        {
            string pattern = @"[1-3]{1,100}\+?";
            if (!Regex.IsMatch(input, pattern)) return;

            List<int> numbers = input.Split('+').Select(item => int.Parse(item)).ToList();
            numbers.Sort();
            string Result = "";

            foreach (int i in numbers)
                Result += i + "+";

            Console.WriteLine(Result.Substring(0, Result.Length - 1));
        }
        static int Petya_and_Strings(params string[] inputs)
        {
            if (inputs[0].Length != inputs[1].Length) return -1;

            return inputs[0].ToLower().CompareTo(inputs[1].ToLower());
        }
        static string Football(string input)
        {
            //string Pattern = @"^[0-1]{1,100}$";
            if (!Regex.IsMatch(input, @"^[0-1]{1,100}$")) return "NO";

            return input.Contains("0000000") || input.Contains("1111111") ? "YES" : "NO";
        }
        static bool Match(string text)
        {
            return Regex.IsMatch(text, @"^[0-1] [0-1] [0-1]$", RegexOptions.Singleline);
        }
        static int Team(int Problems)
        {
            string temp;
            int count = 0;
            string[] t = { "1 1 1", "1 1 0", "1 0 1", "0 1 1" };
            for (int i = 0; i < Problems; i++)
            {
                temp = Console.ReadLine();
                if (!Match(temp)) return 0;
                if (t.Contains(temp))
                {
                    count++;
                }
            }
            return count;
        }

        static int BitPlusPlus(int Operations)
        {

            int Result = 0;
            string temp;
            if (Operations >= 1 && Operations <= 150)
            {
                for (int i = 0; i < Operations; i++)
                {
                    temp = Console.ReadLine();
                    if (!Regex.IsMatch(temp, @"^([\+-]{2})?[a-zA-Z]([\+-]{2})?$")) return 0;

                    int index = temp.IndexOfAny(new char[] { '-', '+' });
                    if (index != -1 && index > 2)
                    {
                        if (temp[index] == '+')
                            Result++;
                        else
                            Result--;
                    }
                    else if (index != -1 && index < 2)
                    {
                        if (temp[index] == '+')
                            ++Result;
                        else
                            --Result;
                    }

                }
            }
            return Result;
        }
    }
}

using System;
using System.Text.RegularExpressions;

public class Program
{
    public static void Main()
    {
        var input = Console.ReadLine();

        var r = new Regex(@"h+.*e+.*l+.*l+.*o+");
        var match = r.Match(input);

        if(match.Success)
        {
             Console.WriteLine("YES");
        }
        else
        {
            Console.WriteLine("NO");
        }

    }
}

using System;
using System.Linq.Expressions;
using System.Runtime.CompilerServices;
using System.Security.Cryptography.X509Certificates;
using System.Text;

namespace ConsoleApp1
{
    internal class Program
    {

        private static void Main(string[] args)
        {

            string vasylaHello = Console.ReadLine();

            string hi = "hello";

            int k = 0;

           for (int i = 0; i < vasylaHello.Length; i++)
            {
                if (k < 5)
                {
                    if (vasylaHello[i] == hi[k])
                    {
                        k++;
                    }
                }

            }
           if (k == 5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }

    }
}

using System;
using System.Text.RegularExpressions;

namespace Codeforces
{
    class Codeforces
    {
        public static void Main(string[] args)
        {
            Console.Write(Regex.IsMatch(Console.ReadLine(), @"h\w*e\w*l\w*l\w*o") ? "YES" : "NO");
        }
    }
}

using System;

namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine().ToLower();
            int size = s.Length;
            int count = 0;
            for(int i = 0; i < size; i++)
            {
                if (s[i] == 'h'&& count==0)
                    count++;
                else if(s[i] == 'e' && count == 1)
                    count++;
                else if (s[i] == 'l' && count == 2|| count == 3)
                    count++;
                else if (s[i] == 'o' && count == 4)
                {
                    count++;
                    break;
                }
            }
            if (count == 5)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            if (s == "hello")
                Console.WriteLine("YES");
            else
            {

                int h, e, l, o;
                h = s.IndexOf('h');
                e = s.IndexOf('e', h + 1);
                l = s.IndexOf('l', e + 1);
                o = s.IndexOf('o', l + 1);

                if (h < 0 || e < 0 || l < 0 || o < 0 || (s.Length < 6))
                    Console.WriteLine("NO");
                else
                {
                    int first_l, second_l;
                    first_l = s.IndexOf("l",h+1);
                    second_l = s.IndexOf("l", first_l + 1);

                    if (second_l < 0)
                        Console.WriteLine("NO");
                    else
                        Console.WriteLine("YES");
                }
            }

        }
    }
}

using static System.Console;

class a
{
    static void Main()
    {
        var s = ReadLine();
        var a = "hello";
        int j = 0;
        for (int i = 0; i < s.Length && j < 5; i++){ if (s[i] == a[j]) j++;}
        WriteLine(j > 4 ? "YES" : "NO");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string a = "hello";
            string b = Console.ReadLine();
            int c = 0;
            for (int i = 0; i < b.Length; i++)
            {
                if (b[i] == a[c])
                {
                    c++;
                }
                if (c == 5)
                {
                    break;
                }
            }
            if (c == 5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Text.RegularExpressions;

namespace Codeforces
{
    class Program
    {
        static void Main(string[] args)
        {
            _58A.Solve();
            Console.ReadLine();
        }
    }

    public class _58A
    {
        public static void Solve()
        {
            string s = Console.ReadLine();
            if (Regex.IsMatch(s, @"\w*h\w*e\w*l\w*l\w*o\w*", RegexOptions.IgnoreCase))
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace codeforces
{
    class chat_room2
    {
        static void Main(string[] args)
        {
            string a = Console.ReadLine().ToLower(), b="";
            for(int i = 0; i < a.Length; i++)
            {
                if(a[i] == 'h')
                {
                    b += "h";
                    for(int j = i; j < a.Length; j++)
                    {
                        if(a[j] == 'e')
                        {
                            b += "e";
                            for(int k = j; k < a.Length; k++)
                            {
                                if(a[k] == 'l')
                                {
                                    b += "l";
                                    k++;
                                    for(int l = k; l < a.Length; l++)
                                    {
                                        if (a[l] == 'l')
                                        {
                                            b += "l";
                                            for(int m = l; m < a.Length; m++)
                                            {
                                                if(a[m] == 'o')
                                                {
                                                    b += "o";
                                                    break;

                                                }
                                            }
                                            break;

                                        }
                                    }
                                    break;

                                }
                            }
                            break;

                        }
                    }
                    break;

                }
            }
            if (b == "hello")
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }
    }
}

using System;
class Program
{
    static void Main()
    {
        var s = Console.ReadLine();
        int i = 0;
        foreach (var l in "hello")
        {
            if ((i = s.IndexOf(l, i)) < 0)
            {
                Console.WriteLine("NO");
                return;
            }
            i++;
        }
        Console.WriteLine("YES");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace The_Chat_Room
{
    class Program
    {
        static void Main(string[] args)
        {
            string S = Console.ReadLine();
            char[] array = S.ToCharArray();
            List<char> li = new List<char>();
            for(int i=0;i<array.Length;i++)
            {
                li.Add(array[i]);
            }
            char[] hello = { 'h', 'e', 'l', 'l', 'o' };
            int sum = 0;
            for (int i = 0; i < 5; i++)
            {
                for (int j = 0; j < li.Count; j++)
                {
                    if (hello[i] != li[j])
                    {
                        li.Remove(li[j]);
                        j -= 1;
                    }
                    else if (hello[i] == li[j])
                    {
                        sum++;
                        li.Remove(li[j]);
                        break;
                    }
                }
            }
            if(sum==5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;

class Problem
{
    public static void Main()
    {
        var allowed = new Dictionary<char, int>
        {
            { 'h', 1 },
            { 'e', 1 },
            { 'l', 2 },
            { 'o', 1 }
        };

        var prev = new Dictionary<char, char>
        {
            { 'e', 'h' },
            { 'l', 'e' },
            { 'o', 'l' }
        };

        string word = Console.ReadLine();

        for (int i = 0; i < word.Length; i++)
        {
            if (allowed.ContainsKey(word[i]))
            {
                if (word[i] == 'h')
                {
                    allowed[word[i]]--;
                }
                else
                {
                    if (word[i] == 'l')
                    {
                        if (allowed['l'] == 2)
                        {
                            if (allowed[prev['l']] <= 0)
                            {
                                allowed['l']--;
                            }
                        }
                        else
                        {
                            allowed['l']--;
                        }
                    }
                    else
                    {
                        if (allowed[prev[word[i]]] <= 0)
                        {
                            allowed[word[i]]--;
                        }
                    }
                }
            }
        }

        Console.WriteLine(allowed.All(x => x.Value <= 0) ? "YES" : "NO");
        //var letters = new LinkedList<char>(Console.ReadLine().ToCharArray());

        //LinkedListNode<char> current = letters.First;

        //while (current != null)
        //{
        //    var next = current.Next;
        //    if (!allowed.Contains(current.Value))
        //    {
        //        letters.Remove(current);
        //    }
        //    else if (current.Value == 'h')
        //    {
        //        if (current.Next != null && current.Next.Value != 'e')
        //        {
        //            letters.Remove(current.Next);
        //        }
        //    }
        //    else if (current.Value == 'e')
        //    {
        //        if (current.Next != null && current.Next.Value != 'l')
        //        {
        //            letters.Remove(current.Next);
        //        }
        //    }
        //    else if (current.Value == 'l')
        //    {
        //        if (current.Next != null)
        //        {
        //            if (current.Previous != null && current.Previous.Value == 'e' && current.Next.Value != 'l')
        //            {
        //                letters.Remove(current.Next);
        //            }
        //            else if (current.Previous != null && current.Previous.Value == 'l' && current.Next.Value != 'o')
        //            {
        //                letters.Remove(current.Next);
        //            }
        //        }
        //    }
        //    current = next;
        //}

    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Hitrez
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            int t=0;
            for (int i = 0; i < str.Length; i++)
            {
                if (t == 0)
                {
                    if (str[i] == 'h') { t++; continue; }
                 //   else t = 0;
                }
                    if (t==1)
                {
                    if (str[i] == 'e') { t++; continue; }
                  //  if (str[i] != 'h') { t = 0; }
                }
                if (t==2)
                {
                    if (str[i] == 'l') { t++; continue; }
                   // if (str[i] != 'e') { t = 0; }
                }
                if (t==3)
                {
                    if (str[i] == 'l') { t++; continue; }
                //else t = 0;
                }
                if (t == 4)
                {
                    if (str[i] == 'o') { t++; continue; }
                   // if (str[i] != 'l') { t = 0; }
                }

            }
            if (t == 5) { Console.Write("YES"); }
            else Console.Write("NO");
            Console.ReadLine();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Trainig_App
{
    class Program
    {
        static void Main(string[] args)
        {
            String input = Console.ReadLine();
            char[] helloWord = new char[] { 'h', 'e', 'l', 'l', 'o' };
            char[] inputArray = input.ToCharArray();
            int counter = 0;
            foreach(char c in inputArray)
            {
                if (c == helloWord[counter])
                    counter++;

                if (counter > 4)
                    break;
            }

            if (counter > 4)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace A.Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            char[] table = { 'h', 'e', 'l', 'l', 'o' };
            string myText = Console.ReadLine();
            int k = 0;

            for (int i = 0; i < myText.Length; i++)
            {
                if (k > 4) break;
                if (myText[i] == table[k]) {
                    k++;
                }

            }

            if (k == 5) Console.WriteLine("YES");
            else Console.WriteLine("NO");

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            str = str.ToLower();
            bool falg = false;
            int index = 0;
            for (; index < str.Length; index++)
            {
                if (str[index] == 'h')
                {
                    ++index;
                    break;
                }
            }
            for (; index < str.Length; index++)
            {
                if (str[index] == 'e')
                {
                    ++index;
                    break;
                }
            }
            for (; index < str.Length; index++)
            {
                if (str[index] == 'l')
                {
                    ++index;
                    break;
                }
            }
            for (; index < str.Length; index++)
            {
                if (str[index] == 'l')
                {
                    ++index;
                    break;
                }
            }
            for (; index < str.Length; index++)
            {
                if (str[index] == 'o')
                {
                    ++index;
                    falg = true;
                    break;
                }
            }
            if (falg)
            {
                Console.WriteLine("YES");
                return;
            }
            Console.WriteLine("NO");
            return;
        }
    }
}

using System.Text.RegularExpressions;
using System;
 class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            Regex regex = new Regex(@".*h.*e.*l.*l.*o.*");
            Match match = regex.Match(input);
            if (match.Success)
            {
                Console.WriteLine("YES");
            }
            else
                Console.WriteLine("NO");
        }
    }

using System;
using System.Text.RegularExpressions;

namespace Chat
{

  class ChattyBoy
  {

    static void Main(string[] args)
    {
      string s = Console.ReadLine();
      Regex condfilter = new Regex("[a-z]*h+[a-z]*e+[a-z]*l+[a-z]*l+[a-z]*o+[a-z]*");
      if (condfilter.IsMatch(s) == true)
        Console.WriteLine("YES");
      else Console.WriteLine("NO");

    }

  }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeForcePreparing
{
    class Programm
    {
        static void Main(string[] args)
        {
            int h = 0;
            int e = 0;
            int l = 0;
            int o = 0;
            char[] str = Console.ReadLine().ToCharArray();
            if (str.Length < 5)
            {
                Console.WriteLine("NO");
                return;
            }
            for (int i = 0; i < str.Length; i++)
            {
                if (h != 1 && str[i] == 'h')
                    h = 1;
                if (h == 1 && e != 1 && str[i] == 'e')
                    e = 1;
                if (h == 1 && e == 1 && l != 2 && str[i] == 'l')
                    l++;
                if (h == 1 && e == 1 && l == 2 && o != 1 && str[i] == 'o')
                    o = 1;
            }
            if (h + e + l + o == 5)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {

        static void Main(string[] args)
        {

            string s = Console.ReadLine();

            if (Regex.IsMatch(s, (@"\w*h\w*e\w*l\w*l\w*o")))
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

            Console.ReadLine();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EO
{
    class Program
    {
        static void Main(string[] args)
        {
            string x = Console.ReadLine();
            string op = "hello";
            int j = 0;
            int sum = 0;
            for (int i = 0; i < x.Length; i++)
            {
                if (sum == 5)
                {
                    break;
                }
                else
                {
                    if (x[i] == op[j])
                    {
                        j++;
                        sum++;
                    }
                }
            }
            if (sum==5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeForces1
{
    class Program
    {
        static void Main(string[] args)
        {
            char[] symbols = { 'h', 'e', 'l', 'l', 'o' };
            string inputString = Console.ReadLine();

            int count = 0;

            foreach(char c in inputString)
            {
                if(count<5
                    && c == symbols[count])
                {
                    count++;
                }
            }

            Console.WriteLine(count == 5 ? "YES" : "NO");
        }
    }
}

using System;
using System.Diagnostics.CodeAnalysis;

namespace Team
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();

            string hello = "hello";
            int a = 0, b = 0;

            for(int i = 0; i < input.Length; i++)
            {
                if(input[i] == hello[a])
                {
                    a++;
                    b++;
                }
                if(a == 5)
                {
                    break;
                }
            }

            if(b == 5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;

namespace Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            string A = Console.ReadLine();
            char[] Alf = { 'h', 'e', 'l', 'l', 'o' };
            string B = "";
            int k = 0;

            foreach (char el in A)
            {
                if (el == Alf[k])
                {
                    B += el;
                    k++;
                }

                if (B.Equals("hello") == true)
                {
                    Console.WriteLine("YES");
                    break;
                }
            }

            if (B.Equals("hello") != true) Console.WriteLine("NO");

            Console.ReadLine();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();//input word 1 <= s <= 100
            string chk = "hello";//checking string

            //process to check if the input string is "hello"
            int i = 0;
            int flag = 0;
            foreach (char letter in chk)
            {
                flag = 0;
                while (i < s.Length)
                {
                    if (letter == s[i])
                    {
                        flag = 1;
                        i++;
                        break;
                    }
                    i++;
                }
            }

            //display output
            if (flag == 1)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication75
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            int[] a = new int[4];
            string ss = " ";
            for (int i = 0; i < s.Length; i++)
            {
                switch (s[i])
                {
                    case 'h':
                        {
                            if (a[0] < 1)
                            {
                                a[0]++;
                                ss += s[i];

                            }
                            break;
                        }
                    case 'e':
                        {
                            if (a[1] < 1&&ss.Last()=='h')
                            {
                                a[1]++;
                                ss += s[i];
                            }
                            break;
                        }
                    case 'l':
                        {
                            if (a[2] < 2&&ss.Last()=='e'|| a[2] < 2 && ss.Last() == 'l')
                            {
                                a[2]++;
                                ss += s[i];
                            }break;
                        }
                    case 'o':
                        {
                            if (a[3] < 1&&ss.Last()=='l'&&a[2]==2)
                            {
                                a[3]++;
                                ss += s[i];
                            }break;
                        }

                }
            }
            ss = ss.Remove(0, 1);
            if (ss == "hello") Console.WriteLine("YES");
            else Console.WriteLine("NO");
        }
    }
}

using System;

namespace codeforces_chechnevis
{
    class Program
    {
        static void Main()
        {
            /* bool a=true;
             string s;
             s = Console.ReadLine();
             for (int i= 0; i < s.Length-4;i++)
             {
                 if(s[i]=='h' && a)
                 {
                     if (i + 1 < s.Length)
                         while (s[i+1]=='h')
                     {
                         i++;
                             if (i + 1 >= s.Length)
                                 break;
                     }
                     if (i + 1 < s.Length)
                         if (s[i+1]=='e')
                     {
                         if (i + 1 < s.Length)
                             while (s[i + 1] == 'e')
                         {
                             i++;
                                 if (i + 1 >= s.Length)
                                     break;
                             }
                         if (i + 1 < s.Length)
                             if (s[i + 1] == 'l')
                         {
                             i++;
                                     if (i + 1 < s.Length)
                                         if (s[i + 1] == 'l')
                             {

                                 if (i + 1 < s.Length)
                                     while (s[i + 1] == 'l')
                                     {
                                             i++;
                                         if (i + 1 >= s.Length)
                                             break;

                                     }
                                 if (i + 1 < s.Length)
                                     if (s[i + 1] == 'o')
                                     {

                                         Console.WriteLine("YES");
                                         a = false;

                                     }

                             }
                         }
                     }
                 }
             }
             if(a)
             {
                 Console.WriteLine("NO");
             }*/

            //---------------------------------------------------------------------------------------

            string s;
            s = Console.ReadLine();
            bool a = true;
            for (int i = 0; i < s.Length - 4; i++)
            {
                if(s[i]=='h' && a)
                {

                    while(i+1<s.Length)
                    {
                        i++;
                        if(s[i]=='e')
                        {
                            while (i + 1 < s.Length)
                            {
                                i++;
                                if (s[i] == 'l')
                                {
                                    while (i + 1 < s.Length)
                                    {
                                        i++;
                                        if (s[i] == 'l')
                                        {
                                            while (i + 1 < s.Length)
                                            {
                                                i++;
                                                if (s[i] == 'o')
                                                {
                                                    Console.WriteLine("YES");
                                                    a = false;
                                                    i = 10000;
                                                    break;

                                                }

                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            if(a)
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Linq;

namespace Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            string s=Console.ReadLine();
            string s2 = "";
            int l = 0;
            foreach (var item in s)
            {
                if(item=='h'|| item == 'e' || item == 'l' || item == 'o')
                {

                    if(s2 == "" && item =='h')
                           s2 += item;
                    else if(s2 == "h" && item == 'e')
                        s2 += item;
                    else if (item =='l' && l<2&& s2.Contains("he"))
                    {
                        l++;
                        s2 += item;
                    }
                    else if (s2 == "hell" && item == 'o')
                        s2 += item;

                }
            }
            if(s2=="hello")
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;

public class Test
{
	public static void Main()
	{
		string input = Console.ReadLine();

		bool input2 = RebuildString(input);

		Console.WriteLine(input2==true?"YES":"NO");
	}

	public static bool RebuildString(string input)
	{

		int hello = 0;

		char[] alph = new char[]{'h','e','l','l','o'};

		for(int x=0;x<input.Length;x++){
			if(input[x]==alph[hello]){
				hello++;
			}
			if(hello==5){ return true;}
		}

		return false;
	}
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Codeforces
{
    class Chatroom
    {
        public static void Main()
        {
            String str = Console.ReadLine();

            char cur = 'h';
            int ln = 0;
            for (int i = 0; i < str.Length; i++)
            {
                if (str[i] == cur)
                {
                    if (cur == 'h')
                        cur = 'e';
                    else if (cur == 'e')
                        cur = 'l';
                    else if (cur == 'l')
                    {
                        if (ln == 0)
                            ln++;
                        else if (ln == 1)
                            cur = 'o';
                    }

                    else if (cur == 'o')
                        cur = 'k';
                }
            }
            if (cur == 'k')
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");

            //Console.ReadKey();
        }

    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace A.Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = Console.ReadLine();
            char[] test_arr = text.ToCharArray();
            string[] hello = {"h","e","l","l","o"};
            int counter = 0;
            string final = "";
            foreach(char c in test_arr)
            {

                    string x = Convert.ToString(c);
                    if (x == hello[counter])
                    {
                        final = final + hello[counter];
                        counter++;
                    }
                if (counter > 4)

                {
                    break;
                }

            }

            if (final=="hello")
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace W0lf
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            int z = 0;
            for(int i = 0; i < s.Length; i++)
            {
                if(z == 0 && s[i] == 'h') z++;
                else if(z == 1 && s[i] == 'e') z++;
                else if(z == 2 && s[i] == 'l') z++;
                else if(z == 3 && s[i] == 'l') z++;
                else if(z == 4 && s[i] == 'o')
                {
                    Console.WriteLine("YES");
                    Console.ReadLine();
                    return;
                }
            }
            Console.WriteLine("NO");
            Console.ReadLine();
        }
    }
}

using System;
class Chat_room
{
    static void Main(string[] args)
    {
        string s = Console.ReadLine().ToLower();
        char[] t = { 'h', 'e', 'l', 'l', 'o' };
        int loc = 0;
        for (int i = 0; i < s.Length; i++)
        {
            if(s[i] == t[loc])
            {
                loc++;
            }
            if (loc == 5)
            {
                Console.WriteLine("YES");
                break;
            }
        }
        if(loc < 5)
        {
            Console.WriteLine("NO");
        }

    }
}

using System;
using System.Text.RegularExpressions;

namespace Competitive.codeforces
{
    class _58A
    {
        static void Main(string[] args)
        {
            var s = Console.ReadLine();
            Console.WriteLine(Regex.IsMatch(s, "h.*e.*l.*l.*o") ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _4._2
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            bool h = false, e = false, l1 = false, l2 = false, o = false;
            for (int i = 0; i < s.Length; i++)
            {
                if (!h && s[i] == 'h')
                    h = true;
                else if (h && !e && s[i] == 'e')
                    e = true;
                else if (e && !l1 && s[i] == 'l')
                    l1 = true;
                else if (l1 && !l2 && s[i] == 'l')
                    l2 = true;
                else if (l2 && !o && s[i] == 'o')
                    o = true;
            }

            if (h && e && l1 && l2 && o)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Text.RegularExpressions;

namespace acm
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();

            List<int> ind = new List<int>();

            int sm = 0;

            ind.Add(s.IndexOf('h'));
            sm += s.IndexOf('h');
            s = s.Substring(s.IndexOf('h') + 1);

            ind.Add(s.IndexOf('e') + sm);
            sm += s.IndexOf('e');
            s = s.Substring(s.IndexOf('e') + 1);

            ind.Add(s.IndexOf('l') + sm);
            sm += s.IndexOf('l');
            s = s.Substring(s.IndexOf('l') + 1);

            ind.Add(s.IndexOf('l') + sm);
            sm += s.IndexOf('l');
            s = s.Substring(s.IndexOf('l') + 1);

            ind.Add(s.IndexOf('o') + sm);
            sm += s.IndexOf('o');
            s = s.Substring(s.IndexOf('o') + 1);

            List<int> test = new List<int>(ind);

            test.Sort();

            if (ind.SequenceEqual(test))
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");

        }

    }

}

using System;

namespace codePro
{
    class Program
    {
        static void Main(string[] args)
        {
            string h = "hello", s="", input = Console.ReadLine();
            int n = 0;

            foreach (char item in input)
                if (item == h[n]) { s += h[n]; n += 1; if (n == 5)break; }

            if (s == h) Console.Write("YES");
            else Console.Write("NO");
        }
    }
}

using System;
using System.Text.RegularExpressions;

namespace _58A_Chat
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            Regex regex = new Regex(@".*h.*e.*l.*l.*o.*");
            MatchCollection matches = regex.Matches(str);
            if (matches.Count>0)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace A.Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            string a = Console.ReadLine();
            bool check = false;
            string h = "hello";
            int j = 0;
            for (int i = 0; i < 5; ++i)
            {
                check = false;
                for (; j < a.Length; j++)
                {
                    if (h[i] == a[j])
                    {
                        check = true;
                        j++;
                        break;
                    }
                }
            }
            if (check)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string IN = Console.ReadLine();
            char[] InC = IN.ToCharArray();
            int c = 0;
            bool final = false;
            for (int i = InC.Length-1; i > 0; i--)
            {
                if(InC[i]=='o')
                {
                    c++;
                    for (int d = i-1; d > 0; d--)
                    {
                        if(InC[d]=='l')
                        {
                            c++;
                            for (int j = d-1; j > 0; j--)
                            {
                                if(InC[j]=='l')
                                {
                                    c++;
                                    for (int k = j-1; k >0; k--)
                                    {
                                        if(InC[k]=='e')
                                        {
                                            c++;
                                            for (int m = k-1; m >=0; m--)
                                            {
                                                if(InC[m]=='h')
                                                {
                                                    c++; final = true;
                                                    break;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }

            if(c>=5&&final)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
namespace CsharpConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            String a = Console.ReadLine();
            int h = a.IndexOf('h');
            if (h == -1)
            {
                Console.WriteLine("NO");
                return;
            }
            int e = a.IndexOf('e', h);
            if (e == -1)
            {
                Console.WriteLine("NO");
                return;
            }
            int l = a.IndexOf('l', e);
            if (l == -1)
            {
                Console.WriteLine("NO");
                return;
            }
            int l2 = a.IndexOf('l', l + 1);
            if (l2 == -1)
            {
                Console.WriteLine("NO");
                return;
            }
            int o = a.IndexOf('o', l2);
            if (o == -1)
            {
                Console.WriteLine("NO");
                return;
            }

            if (h < e && e < l && l < l2 && l2 < o)
                Console.WriteLine("YES");
            else Console.WriteLine("NO");
        }
    }
}

using System;
namespace codeforces
{
    class Program
    {
        static void Main(string[] args)
        {
            ChatRoom hm = new ChatRoom();
            hm.IsHello();
            Console.ReadLine();
        }
    }
    public class ChatRoom
    {
        public void IsHello()
        {
            char[] input = Console.ReadLine().ToCharArray();
            char[] hello = new char[]
            {
                'h','e','l','l','o'
            };
            int helloCount = 0;
            string result = "NO";
            foreach (char c in input)
            {
                if (c == hello[helloCount])
                {
                    helloCount++;
                }
                if (helloCount == 5)
                {
                    result = "YES";
                    break;
                }
            }

            Console.WriteLine(result);
        }
    }
}

// A Dynamic Programming based
// C# program to find minimum
// number operations to
// convert str1 to str2
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

class GFG
{

    public static void Main()
    {
        ///var t = int.Parse(Console.ReadLine());

        //while (t > 0)
        {
            // t--;
            // var n = int.Parse(Console.ReadLine());
            //var arr = Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray();
            //var input = Console.ReadLine().Split();
            //var n = int.Parse(input[0]);
            //var m = int.Parse(input[1]);
            //var k = int.Parse(input[2]);
            // Split(n, arr);
            var str = Console.ReadLine();

            string ans = "hello";
            int k = 0;
            for(int i=0;i<str.Length;i++)
            {
                if(k<ans.Length&&str[i]==ans[k])
                {
                    k++;
                }
            }

            if (k == ans.Length)
                Console.Write("YES");
            else
                Console.Write("NO");

        }

    }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace ProblemN
{
	class Program
	{
		static void Main(string[] args)
		{
			Console.WriteLine(Regex.Match(Console.ReadLine().Trim(), "h+.*e+.*l+.*l+.*o+").Success ? "YES" : "NO");
		}
	}
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace A.Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            string Hello = "hello";
            int index = 0;
            for (int i = 0; i < input.Length; i++)
            {
                if (input[i]==Hello[index])
                {
                    index++;
                }
                if (index==5)
                {
                    break;
                }
            }
            Console.WriteLine(index == 5 ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace chatroom
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            string name = "hello";

            int j=0;
            for (int i = 0; i < input.Length; i++)
            {
                if (input[i] == name[j])
                {
                    j++;
                    if (j > 4)
                    {
                        break;
                    }

                }

            }

            if (j > 4)
            {
                Console.WriteLine("YES");
            }
            else
                Console.WriteLine("NO");

            Console.ReadLine();
        }

    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace algo
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            char[] s1 = s.ToCharArray();
            char[] hello = new char[5];
            hello[0] = 'h';
            hello[1] = 'e';
            hello[2] = 'l';
            hello[3] = 'l';
            hello[4] = 'o';

            int sum = 0;
            int x = 0;

            for (int i = 0; i < 5; i++) {
                for (int j = x; j < s.Length; j++) {
                    x++;
                    if(hello[i]==s1[j]){
                        sum++;
                        break;
                    }
                }
                if (sum == 5) {
                    break;
                }
            }
            if (sum == 5)
            {
                Console.WriteLine("YES");
            }
            else
                Console.WriteLine("NO");
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            char[] input = Console.ReadLine().ToCharArray();
            string example = "hello";
            string output = string.Empty;
            int i = 0;
            int deleted = 0;
            while ((deleted != 5) && (i < input.Length)) {
                if (input[i] == example[deleted]) {
                    output += input[i];
                    if (output == "hello") {
                        Console.WriteLine("YES");
                        return;
                    }
                    ++deleted;
                }
                ++i;
            }
            Console.WriteLine("NO");
        }
    }
}

using System;

namespace A58
{
    class Program
    {
        static void Main(string[] args)
        {
            string vasya = Console.ReadLine().ToLower(), hello = "hello";
            int word = 0;

            for (int i = 0; i < vasya.Length ; i++)
            {
                if (vasya[i] == hello[word])
                    word++;
                if (word > 4)
                    break;
            }

            Console.WriteLine(word > 4 ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;

namespace A._Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            List<char> list = new List<char>(input);
            string x = "hello";
            List<char> listX = new List<char>(x);
            for (int i = 0; i < list.Count; i++)
            {
                if (list[i] == listX[0])
                {
                    listX.Remove(listX[0]);
                    if (listX.Count <= 0)
                    {
                        break;
                    }
                }
            }
            if (listX.Count > 0) { Console.WriteLine("NO"); }
            else { Console.WriteLine("YES"); }
        }
    }
}

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            char[] lettere = new char[] { 'h', 'e', 'l', 'l', 'o' };
            int pos = 0;
            for (int i = 0; i < s.Length&&pos<lettere.Length; i++)
            {
                if (s[i] == lettere[pos])
                {
                    pos++;
                }
            }
            if (pos == lettere.Length)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }

    }
}

using System;

namespace ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string line = Console.ReadLine().ToLower();
            int counter = 0;
            string result = "NO";

            foreach (char chara in line)
            {
                if ((counter == 0 && chara == 'h')
                    || (counter == 1 && chara == 'e')
                    || ((counter == 2 || counter == 3) && chara == 'l'))
                {
                    counter++;
                }
                else if (counter == 4 && chara == 'o')
                {

                    result = "YES";
                    break;
                }

            }

            Console.WriteLine(result);
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            char[] input = Console.ReadLine().ToCharArray();
            string example = "hello";
            string output = string.Empty;
            int deleted = 0;
            for(int i=0;i<input.Length;i++) {
                if (input[i] == example[deleted]) {
                    output += input[i];
                    ++deleted;
                }
                if (output == "hello") {
                    Console.WriteLine("YES");
                    return;
                }
            }
            Console.WriteLine("NO");
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            string input = Console.ReadLine();
            string example = "hello";
            string output = string.Empty;
            int deleted = 0;
            for(int i=0;i<input.Length;i++) {
                if (input[i] == example[deleted]) {
                    output += input[i];
                    ++deleted;
                }
                if (deleted == 5) {
                    Console.WriteLine("YES");
                    return;
                }
            }
            Console.WriteLine("NO");
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            char[] input = Console.ReadLine().ToCharArray();
            string example = "hello";
            string output = string.Empty;
            int i = 0;
            int deleted = 0;
            while ((deleted!=5) && (i < input.Length)) {
                if (input[i] == example[0]) {
                    output += input[i];
                    example = example.Remove(0, 1);
                    ++deleted;
                }
                ++i;
            }
            if (output == "hello") {
                Console.WriteLine("YES");
                return;
            }
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            string str1 = "hello";
            string str2 = Console.ReadLine();

            int t = 0;
            int t1 = 0;
            int pos = 0;
            for (int i = 0; i < str1.Length; i++)
            {

                if(str2.IndexOf(str1[i], pos) > -1 )
                {
                    t = str2.IndexOf(str1[i], pos);
                    pos = t+1;
                    t1++;
                }

            }
            if (t1 == 5) Console.WriteLine("YES");
            else Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            int index = -1, tindex = 0;
            bool flag = false, tflag = false;
            string target = "hello";
            while (!tflag)
            {
                flag = false;
                for (int i = index + 1; i < str.Length; i++)
                {
                    if (str[i].ToString() == target[tindex].ToString())
                    {
                        tindex++;
                        index = i;
                        flag = true;
                        break;
                    }
                }
                if (!flag)
                {
                    break;
                }
                if (tindex == 5)
                {
                    break;
                }
            }

            if (flag)
            {
                Console.Write("YES");
            }
            else
            {
                Console.Write("NO");
            }
            Console.ReadLine();
        }
    }
}

using System;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            string hello = "hello";
            int  j = 0;

            for(int i = 0; i < s.Length; i++)
            {
                if(s[i] == hello[j])
                {
                    j++;
                    if(j == 5)
                    {
                        break;
                    }
                }
            }
            if(j == 5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }

    }
}

using System;
using System.Text.RegularExpressions;

namespace Watermelon
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            int[] index = { 0, 0, 0, 0, 0 };

            string hello = "hello";
            for (int i = 0; i < 5; i++)
            {
                index[i] = input.IndexOf(hello[i], i==0 ? 0 : index[i-1]+1);
            }
            bool answer = true;
            for (int i = 0; i < 4; i++)
            {
                if(index[i] >= index[i+1])
                {
                    answer = false;
                    Console.WriteLine("NO");
                    break;
                }
            }

            if (answer == true)
            {
                Console.WriteLine("YES");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace prog1
{
    class Program
    {
        static void Main(string[] args)
        {
            //int n = int.Parse(Console.ReadLine());
            int x = 0;
            int y = 0;
            string s = Console.ReadLine();
            string t = "hello";
            //bool ans = false;
            //var a1 = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
            for (int i=0; i<s.Length; i++)
            {
                if(x<5)
                if(s[i]==t[x])
                {
                    x++;
                }

            }
            if(x==5)
            {
            Console.WriteLine("YES");
            }
            else
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Text.RegularExpressions;

namespace CodeForces
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            Regex regex = new Regex(@"h+\S*e+\S*l+\S*l+\S*o+\S*", RegexOptions.IgnoreCase | RegexOptions.Compiled);
            Console.WriteLine(regex.IsMatch(s) ? "YES" : "NO");
        }
    }
}

using System;
class Test {
    static void Main(){
        string line = Console.ReadLine();
        string tmp = "";
        line.ToLower();
        for (int i = 0 ; i < line.Length ; i++){
           if(line[i] == 'h'){
               if(tmp.Length == 0){
                   tmp += line[i];
               }
           }
           if(line[i] == 'e'){
               if(tmp.Length == 1){
                   tmp += line[i];
               }
           }
           if(line[i] == 'l'){
               if(tmp.Length == 2 || tmp.Length == 3){
                   tmp += line[i];
               }
           }
           if(line[i] == 'o'){
               if(tmp.Length == 4){
                   tmp += line[i];
               }
           }
        }
        if(tmp == "hello"){
            Console.WriteLine("YES");
        } else {
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Globalization;

namespace Чат
{
    class Program
    {
        static bool rek(int k, int j, string str, string str2)
        {
            if (j < str.Length)
            {
                if (str[j++] == str2[k])
                {
                    k++;
                    //Console.WriteLine("str[" + (j - 1) + "] = " + k);
                }
                if (k == str2.Length-1) return true;
                return rek(k, j, str, str2);
            }
            else return false;

        }

        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            string str2 = "hellou";
            int k = 0;
            int j = 0;

            if (rek(k, j, str, str2)) Console.WriteLine("YES");
            else Console.WriteLine("NO");

            Console.ReadLine();
        }
    }
}

using System;

class A58 {
	public static bool ContainHello(string input) {
        var next = 0;
        foreach (char c in "hello") {
			var start = next;
			for (int i = start; i < input.Length; ++i) {
				if (input[i] == c) {
					next = i + 1;
					break;
				}
			}
			if (start == next) return false;
		}
		return true;
	}

    public static void Main() {
        var input = Console.ReadLine();
        if (ContainHello(input)) {
			Console.WriteLine("YES");
		} else {
			Console.WriteLine("NO");
		}
	}
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Codeforces
{
    class Program
    {
        static void Main(string[] args)
        {
            string sWord = "hello";

            // input word s
            string sText = Console.ReadLine();

            int i = 0;
            int j = 0;

            // verify the matching
            while (i != sWord.Length && j != sText.Length)
            {
                if (sWord[i] == sText[j])
                {
                    ++i;
                }

                ++j;
            }

            // display results
            Console.WriteLine("{0}", (i == sWord.Length ? "YES" : "NO"));

        }
    }
}

using System;
using System.Collections.Generic;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            String s = Console.ReadLine().ToString() ;
            String res = "";
            String[] table = new String[5] { "h", "e", "l", "l", "o" };

            int model = 0;

            for (int i = 0; i < s.Length; i++)
            {
                if (s[i].ToString().Equals(table[model].ToString()))
                {
                    res += table[model];
                    model++;
                }

                if (res.Equals("hello"))
                {
                    break;
                }
            }

            if (res.Equals("hello"))
            {
                Console.Write("YES");
            }

            else
            {
                Console.Write("NO");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;

namespace Algo
{
   class Program
   {
      static void Main()
      {
         //Console.SetIn(File.OpenText(@"C:\Users\user\Documents\Visual Studio 2015\Projects\Algo\Algo\input.txt"));

         string str = Console.ReadLine();
         var helloChars = new Stack<char>("olleh");

         foreach (char c in str) {
            if (helloChars.Count == 0)
               break;

            if (c == helloChars.Peek())
               helloChars.Pop();
         }

         if (helloChars.Count == 0)
            Console.WriteLine("YES");
         else
            Console.WriteLine("NO");
      }
   }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Chat_Room_58A
{
    class Program
    {
        static void Main(string[] args)
        {
            var s = Console.ReadLine();
            var hello = "hello";

            for (int i=0; i<5; i++) {
                var index = s.IndexOf(hello[i]);
                if (index == -1)
                {
                    Console.WriteLine("NO");
                    return;
                }
                s = s.Substring(index + 1);
            }
            Console.WriteLine("YES");

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hello2
{
    class Program
    {
        static void Main(string[] args)
        {
            var word1 = Console.ReadLine(); //hello
            var word2 = "hello";
            var c = 0;

            foreach (var item in word1)
            {

                if (item == word2[c])
                    c++;
                if (c == 5)
                    break;
            }
            if (c==5)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;

namespace Dictionary
{
    class Program
    {

        static void Main(string[] args)
        {
            char[] m = new char[] { 'h', 'e', 'l', 'l', 'o' };
            string s = Console.ReadLine();
            int count = 0;
            foreach (char c in s)
            {
                if (count <5 && c == m[count]) count++;
            }
            Console.Write(count == 5 ? "YES" : "NO");
        }

    }
}

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            String s = Console.ReadLine().ToString() ;
            String res = "";
            char[] table = new char[5] { 'h', 'e', 'l', 'l', 'o'};

            int model = 0;

            for (int i = 0; i < s.Length; i++)
            {

                if (s[i]==(table[model]))
                {
                    res += table[model];
                    model++;
                }

                if (res.Equals("hello"))
                {
                    break;
                }
            }
            Console.WriteLine(res.Equals("hello") ? "YES" : "NO");
        }
    }
}

using System;
class Program
{
    static void Main(string[] args)
    {
        string name = Console.ReadLine();
        string hello = "hello";
        int i1, i2 = 0;
        for(i1=0;i1<name.Length;i1++)
        {
            if (hello[i2] == name[i1])
                i2++;
            if (i2 == 5)
                break;
        }
        Console.WriteLine(i2 == 5 ? "YES" : "NO");
    }
}

using System;
class Program
{
  static void Main()
  {
    char[] x = { 'h', 'e', 'l', 'l', 'o' };
    string line = Console.ReadLine();
    byte i, result = 0, y = 0;
    for (i = 0; i < line.Length; i++)
    {
      if (line[i] == x[y])
      {
        result++;
        y++;
    }
    if (y == 5) break;
  }
  Console.WriteLine(result == 5 ? "YES" : "NO");
  }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeForces
{
    class Program
    {
        static void Main(string[] args)
        {
            string BaseWord = "hello";
            string s = Console.ReadLine().ToLower();
            int i = 0;
            string temp = string.Empty;

            if (s.Length < 5)
            {
                Console.WriteLine("NO");
                return;
            }

            for (int j = 0; j < BaseWord.Length; j++)
            {
                for (; i < s.Length; i++)
                {

                    if (BaseWord[j] == s[i])
                    {
                        temp += i + ",";
                        i++;
                        break;
                    }
                }

            }
            temp = temp.Remove(temp.Length - 1);
            int[] indexes = Array.ConvertAll(temp.Split(','), int.Parse);

            if (indexes.Length != 5)
            {
                Console.WriteLine("NO");
            }
            else
            {
                Console.WriteLine(checkedIfSorted(indexes, indexes.Length) ? "YES" : "NO");

            }

        }

        public static bool checkedIfSorted(int[] arr, int length)
        {

            if (length == 0 || length == 1)
            {
                return true;
            }

            if (arr[length - 2] > arr[length - 1])
            {

                return false;
            }

            return checkedIfSorted(arr, length - 1);

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication17
{
    class Program
    {

        static void Main(string[] args)
        {

            StringBuilder word = new StringBuilder(Console.ReadLine());
            byte ResPointer =0;

           char c ;
            for (byte i = 0; i < word.Length ; i++)
            {
                c = word[i];
               switch(c)
               {
                   case 'h':

                       if(ResPointer==0)
                       {
                           ResPointer++;
                       }

                       break;
                   case 'e':

                       if (ResPointer == 1)
                       {
                           ResPointer++;
                       }

                       break;
                   case 'l':

                       if (ResPointer == 2 || ResPointer ==3)
                       {
                           ResPointer++;
                       }

                       break;
                   case 'o':

                       if (ResPointer ==4)
                       {
                           ResPointer++;
                       }

                       break;

               }

            }
            if (ResPointer == 5)
            {
                Console.WriteLine("YES");
            }
            else
                Console.WriteLine("NO");

    }

    }
}

using System;
public class Hello{
	static void Main(){
		String s = Console.ReadLine();
		String x= "hello";
		int pos=0;
		// int cur=-1;
		for(int i=0; i<s.Length; i++){
			if(pos==5)
				break;
			if(s[i]== x[pos]){
				pos++;
			}
			// else if(cur !=-1 && s[i]==x[cur]){
			// 	continue;
			// }
			// else if(cur !=-1){
			// 	break;
			// }
		}
		if(pos==5){
			Console.WriteLine("YES");
		}
		else{
			Console.WriteLine("NO");
		}
	}
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {

        static int ReadIntLine()
        {
            return int.Parse(Console.ReadLine());
        }

        static int[] ReadIntArrayLine()
        {
            char[] sep = { ' ' };
            return Console.ReadLine().Split(sep, StringSplitOptions.RemoveEmptyEntries).Select(x => int.Parse(x)).ToArray();
        }

        static void PrintLn(object obj)
        {
            Console.WriteLine(obj.ToString());
        }

        static void Main(string[] args)
        {

            string a = Console.ReadLine();

            string h = "hello";

            int state = 0;

            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] == h[state])
                    state++;
                if (state == h.Length)
                    break;
            }

            Console.WriteLine((state == h.Length)?"YES":"NO");

        }
    }
}

using System;
using System.Linq;
using System.Collections.Generic;

namespace Test1
{
    public class Test1
    {
        public static void Main()
        {
            string input = Console.ReadLine();
            string hello = "hello";
            bool matchFound = false;
            int five = 0;
            int index = 0;
            for (int i = 0; i < input.Length; i++)
            {
                if (input[i] == hello[index])
                {
                    five++;
                    index++;
                    if (five == 5) { matchFound = true; break; }
                }
            }

            Console.WriteLine(matchFound ? "YES" : "NO");
        }
    }
}

using System;
using System.Text.RegularExpressions;
public class Program
{
	public static void Main()
	{
		 string testingWord= Console.ReadLine();
		string searchingRegex=".*h.*e.*l.*l.*o.*";
		Regex rgx = new Regex(searchingRegex);
		Console.WriteLine(rgx.IsMatch(testingWord)?"YES":"NO");
	}
}

using System;

namespace CF58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            bool yes = false;
            int h = s.IndexOf("h", 0);
            if (h != -1) {
                int e = s.IndexOf("e", h + 1);
                if (e != -1) {
                    int l1 = s.IndexOf("l", e + 1);
                    if (l1 != -1) {
                        int l2 = s.IndexOf("l", l1 + 1);
                        if (l2 != -1) {
                            int o = s.IndexOf("o", l2 + 1);
                            if(o != -1) yes = true;
                        }
                    }
                }
            }
            if (yes) Console.WriteLine("YES");
            else Console.WriteLine("NO");
        }
    }
}

using System;
using System.Linq;

public class Program
{
    private static void Main()
    {//hlelo
        var str = new string(Console.ReadLine().Where(c => "helo".Contains(c)).ToArray());
        str = str.Remove(0, str.IndexOf('h'));
        if (str.IndexOf("h") < str.IndexOf("e") && str.All(c => "helo".Contains(c)) && str.Count(c => c == 'l') > 1)
        {
            str = str.Remove(0, str.IndexOf('e'));
            if (str.IndexOf("e") < str.IndexOf("l"))
            {
                str = str.Remove(0, str.IndexOf('l')+1);
                if (str.IndexOf("l") < str.IndexOf("o"))
                {
                    Console.WriteLine("YES");
                    return;
                }
            }
        }

        Console.WriteLine("NO");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CF85_D2_A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string line = Console.ReadLine().ToLower().Trim();
            line = new string(line.ToCharArray().Distinct().ToArray());

            if (line.Contains("helo"))
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");

        }
    }
}

using System;
using System.Linq;

public class Program
{
    private static void Main()
    {
        var str = Console.ReadLine();
        if ("hello".All(c => str.Contains(c)))
        {
            if (str.IndexOf("h") < str.IndexOf("e"))
            {
                str = str.Remove(0, str.IndexOf('e'));
                if (str.IndexOf("e") < str.IndexOf("l"))
                {
                    str = str.Remove(0, str.IndexOf('l'));

                    if (str.IndexOf("l") < str.LastIndexOf("l"))
                    {
                        str = str.Remove(0, str.LastIndexOf('l'));

                        if (str.LastIndexOf("l") < str.IndexOf("o"))
                        {
                            Console.WriteLine("YES");
                        }
                    }
                }
            }
        }
        Console.WriteLine("NO");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            if (s == "hello")
                Console.WriteLine("YES");
            else
            {

                int h, e, l, o;
                h = s.IndexOf('h');
                e = s.IndexOf('e', h + 1);
                l = s.IndexOf('l', e + 1);
                o = s.IndexOf('o', l + 1);

                if (h < 0 || e < 0 || l < 0 || o < 0 || (s.Length < 6))
                    Console.WriteLine("NO");
                else
                {
                    int first_l, second_l;
                    first_l = s.IndexOf("l");
                    second_l = s.IndexOf("l", first_l + 1);

                    if (second_l < 0)
                        Console.WriteLine("NO");
                    else
                        Console.WriteLine("YES");
                }
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Diagnostics.Eventing.Reader;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Xml;

namespace CodeForces
{
    class ChatRoom
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            string hello = "";
            int counter = 0;

            for (int i = 0; i < input.Length; i++)
            {
                if (input[i] == 'h')
                {
                    counter++;
                    if (hello.Contains('h') == false)
                    {
                        hello += input[i];
                    }
                }
                else if (input[i] == 'e')
                {
                    counter++;
                    if (hello.Contains('e') == false && hello == "h")
                    {
                        hello += input[i];
                    }
                }
                else if (input[i] == 'l')
                {
                    counter++;
                    if (hello.Contains('l') == true && hello == "hel")
                    {
                        hello += input[i];
                    }
                    if (hello.Contains('l') == false && hello == "he")
                    {
                        hello += input[i];
                    }
                }
                else if (input[i] == 'o')
                {
                    counter++;
                    if (hello.Contains('o') == false && hello == "hell")
                    {
                        hello += input[i];
                    }
                }
            }
            if (hello == "hello" && counter > 5)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
class Test {
    static void Main(){
        string line = Console.ReadLine();
        string tmp = "";
        line.ToLower();
        for (int i = 0 ; i < line.Length ; i++){
            if(i == 0){
                tmp += line[i];
            } else {
                if(line[i] == 'l' && line[i-1] != 'l'){
                    tmp += line[i];
                }
                if(line[i] != line[i-1]){
                    tmp += line[i];
                }
            }
        }Console.WriteLine(tmp);
        if(tmp.IndexOf("hello") != -1){
            Console.WriteLine("YES");
        } else {
            Console.WriteLine("NO");
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            char[] input = Console.ReadLine().ToCharArray();
            string example = "hello";
            string output = string.Empty;
            int deleted = 0;
            for(int i=0;i<input.Length;i++) {
                if (input[i] == example[deleted]) {
                    output += input[i];
                    ++deleted;
                }
                if (output == "hello") {
                    Console.WriteLine("YES");
                    return;
                }
                ++i;
            }
            Console.WriteLine("NO");
        }
    }
}

using System;

namespace codeforces_chechnevis
{
    class Program
    {
        static void Main()
        {
            bool a=true;
            string s;
            s = Console.ReadLine();
            for (int i= 0; i < s.Length-5;i++)
            {
                if(s[i]=='h')
                {
                    while(s[i+1]=='h')
                    {
                        i++;
                    }
                    if(s[i+1]=='e')
                    {
                        while (s[i + 1] == 'e')
                        {
                            i++;
                        }
                        if (s[i+1]=='l')
                        {

                            if (s[i+1]=='l')
                            {
                                while (s[i + 1] == 'l')
                                {
                                    i++;
                                }
                                if (s[i+1]=='o')
                                {
                                    while (s[i + 1] == '0')
                                    {
                                        i++;
                                    }
                                    Console.WriteLine("YES");
                                    a = false;
                                }
                            }
                        }
                    }
                }
            }
            if(a)
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace WarmingUpC_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            string word = Console.ReadLine();
            int count = 0;
            for (int i = 0; i < word.Length; i++)
            {
                if (word[i] == 'h' && count == 0)
                    count++;
                if (word[i] == 'e' && count == 1)
                    count++;
                if (word[i] == 'l' && count == 2)
                    count++;
                if (word[i] == 'l' && count == 3)
                    count++;
                if (word[i] == 'o' && count == 4)
                    count++;
                if (count == 5)
                {
                    Console.WriteLine("YES");
                    return;
                }
            }
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            bool answer = false;
            bool flag = false;
            int[] rangeEnd = new int[0];
            int[] rangeStart = new int[0];
            int numberOfMatches = 0;
            for (int h = 0; h < s.Length; h++)
            {
                if (s[h] == 'h')
                {
                    for (int o = h; o < s.Length; o++)
                    {
                        if (s[o] == 'o')
                        {
                            Array.Resize(ref rangeStart, rangeStart.Length + 1);
                            Array.Resize(ref rangeEnd, rangeEnd.Length + 1);
                            rangeStart[rangeStart.Length - 1] = h;
                            rangeEnd[rangeEnd.Length - 1] = o;
                            answer = true;
                            break;
                        }
                    }
                }
            }
            if (answer)
            {
                for (int numberOfRanges = 0; numberOfRanges < rangeStart.Length; numberOfRanges++)
                {
                    if (flag)
                        break;
                    numberOfMatches = 0;
                    for (int x = rangeStart[numberOfRanges]; x < rangeEnd[numberOfRanges]; x++)
                    {
                        switch (numberOfMatches)
                        {
                            case 0:
                                if (s[x] == 'e')
                                    numberOfMatches++;
                                break;
                            case 1:
                                if (s[x] == 'l')
                                    numberOfMatches++;
                                break;
                            case 2:
                                if (s[x] == 'l')
                                    numberOfMatches++;
                                break;
                        }
                        if (numberOfMatches == 3)
                        {
                            flag = true;
                            break;
                        }
                        else if (x == rangeEnd[numberOfRanges] - 1)
                            answer = false;
                    }
                }
            }
            Console.Write(answer ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication15
{
    class Program
    {
        static void Main(string[] args)
        {
            String line = Console.ReadLine();
            bool[] word = new bool[5];
            char[] hello = new char[] { 'h', 'e', 'l', 'l', 'o' };
            int count = 0;

            for (int i = 0; i < line.Length; i++)
            {
                if (count == 5)
                {
                    Console.WriteLine("YES");
                    return;
                }
                if (line[i] == hello[count])
                {
                    count++;
                }
            }

            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Linq;

public class Program
{
	public static void Main()
	{
		string str = Console.ReadLine();
		string s = new string(str.Distinct().ToArray());
		if(s=="hello"){
			Console.WriteLine("YES");
		}
		else{
			Console.WriteLine("NO");
		}
	}
}

using System;
using System.Text.RegularExpressions;

namespace Chat
{

  class ChattyBoy
  {

    static void Main(string[] args)
    {
      string s = Console.ReadLine();
      Regex condfilter = new Regex("[a-z]*(hello)*");
      if (condfilter.IsMatch(s) == true)
        Console.WriteLine("YES");
      else Console.WriteLine("NO");

    }

  }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeForces
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine().ToLower();
            HashSet<char> chat = new HashSet<char>(s);
            string word = string.Concat(chat);
            Console.WriteLine((word.Contains("helo")) ? "YES" : "NO");
        }
    }
}

using System;
namespace CsharpConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            String a = Console.ReadLine();
            int h = a.IndexOf('h');
            int e = a.IndexOf('e');
            int l = a.IndexOf('l');
            int l2 = a.IndexOf('l', l + 1);
            int o = a.IndexOf('o');

            if (h < e && e < l && l < l2 && l2 < o)
                Console.WriteLine("YES");
            else Console.WriteLine("NO");
        }
    }
}

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            for (int i=0;i<str.Length;i++)
            {
                if((str[i]!='h')&&(str[i]!='e')&&(str[i]!='l')&&(str[i]!='o'))
                {
                    str = str.Remove(i, 1);
                    i--;
                }
            }
            string str2 = "";
            for (int i=0;i<str.Length;i++)
            {
                bool mark = false;
                for (int j=0;j<str2.Length;j++)
                {
                    if (str[i] == str2[j]) { mark = true; break; }
                }
                if(mark!=true)
                {
                    str2 += str[i];
                    if(str2[str2.Length-1]=='l')
                    {
                        str2 += 'l';
                    }
                }
            }
            if(str2.Contains("hello")==true) { Console.WriteLine("YES"); }
            else { Console.WriteLine("NO"); }
        }
    }
}

using System;
class Program
{
    static void Main()
    {
        var s = Console.ReadLine();
        int i = 0;
        foreach (var l in "helo")
        {
            if (s.IndexOf(l) < i)
            {
                Console.WriteLine("NO");
                return;
            }
            i = s.IndexOf(l);
        }
        i = Array.FindIndex(s.ToCharArray(), c => c == 'l');
        if (Array.FindIndex(s.ToCharArray(), i + 1, c => c == 'l') > 0)
        {
            Console.WriteLine("YES");
        }
        else
        {
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication60
{
    class Program
    {
        static void Main(string[] args)
        {
            string a = Console.ReadLine();
            if (a == "ahhellllloou")
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;

namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine().ToLower();
            int size = s.Length;
            int count = 0;
            for(int i = 0; i < size; i++)
            {
                if (s[i] == 'h'&& count==0)
                    count++;
                else if(s[i] == 'e' && count == 1)
                    count++;
                else if (s[i] == 'l' && count == 2|| count == 3)
                    count++;
                else if (s[i] == '0' && count == 4)
                {
                    count++;
                    break;
                }
            }
            if (count == 4)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
class Codeforce
{
     static void Main()
    {
        string s= Console.ReadLine();
        string ans="";
        string hello="hello";
        int i=0;
        int j;
        int check;
        int end=0;
        char temp;
        int nub;
        for( i=0;i<s.Length;i++)
      {
          temp=s[i];
          nub=0;

         while ( i<s.Length && s[i]==temp)
         {
              nub++;
              i++;

         }

          i--;
            ans+=s[i];
          if (nub>1 && s[i]=='l')
             ans+=s[i];
      }

        // Console.WriteLine(ans);
          for( i =0; i<ans.Length && end==0;i++)
         {
              j=i;
              check=0;
              while(j<ans.Length  && ans[j]==hello[check] )
              {
                 check++;
                 if (check==5)
                   {   Console.Write("YES");
                          end=1;
                          break;
                   }
                 j++;
              }

         }
         if (end==0)
             Console.Write("NO");

    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace Implemetation
{
    class Program
    {
        static void Main(string[] args)
        {
            //string input = Console.ReadLine();
            //Console.WriteLine(Football(input));
            //int result=Petya_and_Strings(Console.ReadLine(), Console.ReadLine());
            //Console.WriteLine(result);
            //Helpful_Maths(Console.ReadLine());
            //Word_Capitalization(Console.ReadLine());
            //Taxi(int.Parse(Console.ReadLine()));
            //Console.WriteLine(Math.Ceiling((double)13/5));

            //Console.WriteLine(Regex.IsMatch(Console.ReadLine(), @"[1-4]((\s[1-4])+)?"));

            string text = Console.ReadLine();
            if (text.Length > 100 || text.Length < 1) return;
            if (!Regex.IsMatch(text, @"^[a-zA-Z]+$")) return;

            string Result = "";
            foreach (char c in text.Distinct())
            {
                if(c == 'l')
                {
                    Result += c;
                    Result += c;
                }
                else
                    Result += c;
            }
            //Console.WriteLine(Result.Contains("hello")?"YES":"NO");
            Console.WriteLine(Result.Contains("hello")?"YES":"NO");
        }
        static void Taxi(int input)
        {
            if (input < 1 || input > Math.Pow(10, 5)) return;
            string strnumbers = Console.ReadLine();
            if (!Regex.IsMatch(strnumbers, @"[1-4](\s[1-4])+")) return;

            int[] nums=strnumbers.Split(' ').Select(num=>int.Parse(num)).ToArray();
            if (nums.Length != input) return;

            Console.WriteLine(Math.Ceiling((double)nums.Sum() / 4));

        }
        static void Word_Capitalization(string input)
        {
            if (input.Length > Math.Pow(10, 3)) return;

            string result;

            if (input[0] >= 97)
            {
                char c = input[0];
                int cint = c - 32;
                char res = (char)cint;
                result = res + input.Substring(1, input.Length - 1);
                Console.WriteLine(result);
            }
            else
            {
                Console.WriteLine(input);
            }
        }
        static void Helpful_Maths(string input)
        {
            string pattern = @"[1-3]{1,100}\+?";
            if (!Regex.IsMatch(input, pattern)) return;

            List<int> numbers = input.Split('+').Select(item => int.Parse(item)).ToList();
            numbers.Sort();
            string Result = "";

            foreach (int i in numbers)
                Result += i + "+";

            Console.WriteLine(Result.Substring(0, Result.Length - 1));
        }
        static int Petya_and_Strings(params string[] inputs)
        {
            if (inputs[0].Length != inputs[1].Length) return -1;

            return inputs[0].ToLower().CompareTo(inputs[1].ToLower());
        }
        static string Football(string input)
        {
            //string Pattern = @"^[0-1]{1,100}$";
            if (!Regex.IsMatch(input, @"^[0-1]{1,100}$")) return "NO";

            return input.Contains("0000000") || input.Contains("1111111") ? "YES" : "NO";
        }
        static bool Match(string text)
        {
            return Regex.IsMatch(text, @"^[0-1] [0-1] [0-1]$", RegexOptions.Singleline);
        }
        static int Team(int Problems)
        {
            string temp;
            int count = 0;
            string[] t = { "1 1 1", "1 1 0", "1 0 1", "0 1 1" };
            for (int i = 0; i < Problems; i++)
            {
                temp = Console.ReadLine();
                if (!Match(temp)) return 0;
                if (t.Contains(temp))
                {
                    count++;
                }
            }
            return count;
        }

        static int BitPlusPlus(int Operations)
        {

            int Result = 0;
            string temp;
            if (Operations >= 1 && Operations <= 150)
            {
                for (int i = 0; i < Operations; i++)
                {
                    temp = Console.ReadLine();
                    if (!Regex.IsMatch(temp, @"^([\+-]{2})?[a-zA-Z]([\+-]{2})?$")) return 0;

                    int index = temp.IndexOfAny(new char[] { '-', '+' });
                    if (index != -1 && index > 2)
                    {
                        if (temp[index] == '+')
                            Result++;
                        else
                            Result--;
                    }
                    else if (index != -1 && index < 2)
                    {
                        if (temp[index] == '+')
                            ++Result;
                        else
                            --Result;
                    }

                }
            }
            return Result;
        }
    }
}

using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace Chat
{

  class ChattyBoy
  {

    static void Main(string[] args)
    {
      string s = Console.ReadLine();
      Regex condfilter = new Regex(s);
      if (condfilter.IsMatch("[a-z]*(?:hello)*") == true)
        Console.WriteLine("YES");
      else Console.WriteLine("NO");

    }

  }

}

using System;
using System.Text.RegularExpressions;

namespace Codeforces
{
    class Program
    {
        static void Main(string[] args)
        {
            _58A.Solve();
        }
    }

    public class _58A
    {
        public static void Solve()
        {
            string s = Console.ReadLine();
            if (Regex.IsMatch(s, @"\w*h\w*e\w*ll\w*o\w*", RegexOptions.IgnoreCase))
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
class Test {
    static void Main(){
        string line = Console.ReadLine();
        string tmp = "";
        line.ToLower();
        for (int i = 0 ; i < line.Length ; i++){
            if(i == 0){
                tmp += line[i];
            } else {
                if(line[i] == 'l' && line[i-1] != 'l'){
                    tmp += line[i];
                }
                if(line[i] != line[i-1]){
                    tmp += line[i];
                }
            }
        }
        if(tmp.IndexOf("hello") != -1){
            Console.WriteLine("YES");
        } else {
            Console.WriteLine("NO");
        }
    }
}

using System;

namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine().ToLower();
            int size = s.Length;
            int count = 0;
            for(int i = 0; i < size; i++)
            {
                if (s[i] == 'h'&& count==0)
                    count++;
                else if(s[i] == 'e' && count == 1)
                    count++;
                else if (s[i] == 'l' && count <4)
                    count++;
                else if (s[i] == '0' && count == 4)
                {
                    count++;
                    break;
                }
            }
            if (count == 4)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Problem_Solving
{
    class Program
    {
        static void Main(string[] args)
        {
            // The code provided will print ‘Hello World’ to the console.
            // Press Ctrl+F5 (or go to Debug > Start Without Debugging) to run your app.
            //Console.WriteLine("Hello World!");
            //Console.ReadKey();
            var target = "hello";
            string testString;
            testString = Console.ReadLine();
            int index = 0;
            var res = "";
            var counter = 0;
            foreach (var character in target)
            {
                var x = testString.IndexOf(character , index);
                if (testString.IndexOf(character , index) >= index)
                {
                    index = testString.IndexOf(character , index);
                    counter++;

                }

            }
            if(counter == 5)
                Console.Write("YES");
            else
                Console.Write("NO");

            // Go to http://aka.ms/dotnet-get-started-console to continue learning how to build a console app!
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CF32ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string a = Console.ReadLine();
            int len = a.Length;
            for(int i=0;i<len;i++)
            {
                if(a[i]=='h' || a[i]=='e' || a[i]=='l' || a[i]=='o')
                {

                }
                else
                {

                    int index = a.IndexOf(a[i]);
                    a = a.Remove(index, 1);
                    i = i - 1;
                    len = len - 1;
                }
            }
            int got = 0;
            for(int i=0;i<a.Length;i++)
            {
                switch(a[i])
                {
                    case 'h':
                        if (got == 0)
                            got++;
                        else
                        {

                            a = a.Remove(i, 1);
                        }
                        break;
                    case 'e':
                        if (got == 1)
                            got++;
                        else
                        {

                            a = a.Remove(i, 1);
                        }
                        break;
                    case 'l':
                        if(got==2 || got ==3)
                        {
                            got++;
                        }
                        else
                        {

                            a = a.Remove(i, 1);
                        }
                        break;
                    case 'o':
                        if (got == 4)
                        {
                            got++;
                        }
                        else
                        {

                            a = a.Remove(i, 1);
                        }
                        break;
                }
            }
            if(a=="hello")
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
            Console.ReadLine();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CF85_D2_A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string line = Console.ReadLine().ToLower().Trim();
            line = new string(line.ToCharArray().Distinct().ToArray());

            if (line.Contains("helo"))
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");

        }
    }
}

using System;
using System.Text.RegularExpressions;

namespace CodeForces
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            Regex regex = new Regex(@"h+e+l+l+o+", RegexOptions.IgnoreCase | RegexOptions.Compiled);
            Console.WriteLine(regex.IsMatch(s) ? "YES" : "NO");
        }
    }
}

using System;
namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
           string s = Console.ReadLine();
           bool h=false;
           bool e = false;
           bool l1=false;
           bool l2=false;
           bool o = false;
           for (int i=0;i<s.Length; i++)
           {
               if (!h)
               if (s[i]=='h') {h=true; continue;}
               if (h&&!e)
               if (s[i]=='e') {e=true; continue;}
               if (h&&e&&!l1)
               if (s[i]=='l') {l1=true; continue;}
               if (h&&e&&l1&&!l2)
               if (s[i]=='l') {l2=true; continue;}
               if (h&&e&&l1&&l2&&!o) {o=true; continue;}
               if (h&&e&&l1&&l2&&o) break;
           }
           if (h&&e&&l1&&l2&&o) Console.WriteLine("YES");
           else
           Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace code
{
    class Wight
    {

        static void Main(string[] args)
        {

            string input = Console.ReadLine();

            char[] hello = "hello".ToCharArray();

            char[] inputchar = input.ToCharArray();

            string hellostring = "";

            foreach(var ch in inputchar)
            {
                if (hello.Contains(ch))
                {
                    if (!hellostring.Contains(ch))
                    {

                        hellostring += ch;
                    }

                }

            }

            if(hellostring=="hello" || hellostring =="helo" || input.Contains("he"))
            {
                Console.WriteLine("YES");
            }

            else
            {
                Console.WriteLine("NO");
            }

        }
    }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CF85_D2_A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            char[] ch = {'h','e','l','l','o' };
            string line = Console.ReadLine().ToLower().Trim();
            line = new string(line.Where(c => ch.Contains(c)).ToArray());
            //line = new string(line.ToCharArray().Distinct().ToArray());
            char[] lineCH = line.ToCharArray();

            if (line.Contains("hel")|| line.Contains("heol")|| line.Contains("helo"))
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string finalName = "hello";
             char[] fc = finalName.ToCharArray();
            int i = 0;

            string userText = Console.ReadLine();
            char[] userChars = userText.ToCharArray();

            foreach (char uc in userChars)
            {
                // Console.WriteLine(uc);
                if (uc == finalName[i])
                {
                    // Console.WriteLine(i);
                    if (i != 4)
                    {
                        i++;
                    }
                }
            }

            if (i == 4)
            {
                Console.WriteLine("YES");
            } else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;

namespace ChatRoom
{
    class Program
    {
        public static void Main(string[] args)
        {
            string s = Console.ReadLine();

            bool result = false;
            string word = "hello";
            int start = 0;
            for (int i = 0; i < s.Length; i++){
                if (s[i] == word[start])
                {
                    start += 1;
                }else if (start > 0 && s[i] == word[start-1]){
                    continue;
                }else{
                    start = 0;
                }
                if (start == word.Length ){
                    result = true;
                    break;
                }

            }
            Console.WriteLine(result ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication18
{
    class Program
    {
        static void Main(string[] args)
        {
            int i = 0;
            string h = "hello ";
            List<char> l = Console.ReadLine().ToList();
            foreach (char ch in l)
            {
                if (ch == h[i])
                {
                    h = h.Remove(0, 1);
                }
            }
            Console.WriteLine(h);
            if(h.Length <= 1)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            String input;
            String hello = "hello";

            input = Console.ReadLine();

            for (int i = 0; i < input.Length-1; i++)
            {
                if (hello.Length == 0)
                {
                    break;
                }
                if (hello[0] == input[i])
                {
                    hello = hello.Substring(1);
                    Console.WriteLine(hello);
                }

            }
            if (hello.Length > 0)
            {
                Console.WriteLine("NO");
            }
            else
            {
                Console.WriteLine("YES");
            }

        }
    }

}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            string input = Console.ReadLine();
            input = input.Replace("ll", "!");
            for (int i = 1; i < input.Length; ++i) {
                if (input[i - 1] == input[i]) {
                    input = input.Remove(i, 1);
                }
            }
            if (input.Contains("he!o") || input.Contains("he!lo")) {
                Console.WriteLine("YES");
            }
            else {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeForces
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine().ToLower();
            HashSet<char> chat = new HashSet<char>(s);
            string word = string.Concat(chat);
            Console.WriteLine((word.Contains("helo")) ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
//using System.Linq;
//using System.Text;
//using System.Threading.Tasks;

namespace Problem58A {
    class Program {
        static void Main(string[] args) {
            char[] word = Console.ReadLine().ToCharArray();
            int[] helloLetters = getOnlyHelloLetters(word);
            bool couldWrite = checkHello(helloLetters);

            if (couldWrite)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }

        private static bool checkHello(int[] helloLetters) {
            bool canWrite = true;
            int helloLength = helloLetters.Length;

            for (int i = 0; i < helloLength-1; i++) {
                int letter = helloLetters[i];
                int nextLetter = helloLetters[i + 1];

                if (nextLetter < letter) {
                    canWrite = false;
                    break;
                }
            }
            return canWrite;
        }

        private static int[] getOnlyHelloLetters(char[] word) {
            List<char> list = new List<char>();
            int wordLength = word.Length;
            for (int i = 0; i < wordLength; i++) {
                if (word[i].Equals('h') || word[i].Equals('e') || word[i].Equals('l') || word[i].Equals('o')) {
                    list.Add(word[i]);
                }
            }

            int listLength = list.Count;
            int[] helloLetters = new int[listLength];
            for (int i = 0; i < listLength; i++) {
                int helloOrd = 0;
                if (list[i].Equals('h')) helloOrd = 1;
                if (list[i].Equals('e')) helloOrd = 2;
                if (list[i].Equals('l')) helloOrd = 3;
                if (list[i].Equals('o')) helloOrd = 4;

                helloLetters[i] = helloOrd;
            }
            return helloLetters;
        }
    }
}

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        private static void MyMain() {

            string k = RLine();
            char[] c = k.Where(i => i == 'h' || i == 'e' || i == 'l' || i == 'o').ToArray();
            string n = new string(c);

            bool flag = false;
            int indexOfH = n.IndexOf('h');
            if (indexOfH >=0)
            {
                string stepE = n.Substring(indexOfH);
                int indexOfE = stepE.IndexOf('e');
                if (indexOfE >= 0)
                {
                    string stepL1 = stepE.Substring(indexOfE);
                    int indexOfL1 = stepE.IndexOf('l');
                    if (indexOfL1 >= 0)
                    {
                        string stepL2 = stepL1.Substring(indexOfL1);
                        int indexOfL2 = stepL2.IndexOf('l');
                        if (indexOfL2 >= 0)
                        {
                            string stepO = stepL2.Substring(indexOfL2);
                            int indexOfO = stepO.IndexOf('o');
                            if (indexOfO >= 0)
                            {
                                flag = true;
                                WLine("YES");

                            }
                        }
                    }
                }
            }

            if (flag == false) {
                WLine("NO");
            }
        }
        static void Main()
        {
#if !HOME
            MyMain();
#else
            var tmp = Console.In;
            Console.SetIn(new StreamReader("in.txt"));
            while (Console.In.Peek() > 0)
            {
                MyMain();
            }
            Console.In.Close();
            Console.SetIn(tmp);
            Console.ReadKey();
#endif
        }

        #region Utils
        static string RLine()
        {
            return Console.ReadLine();
        }

        static int RInt()
        {
            var str = Console.ReadLine();
            return Convert.ToInt32(str);
        }

        static int[] RInts()
        {
            return Array.ConvertAll(Console.ReadLine().Split(' '), s => Convert.ToInt32(s));
        }

        static void RInts(out int a, out int b)
        {
            var ints = RInts();
            a = ints[0];
            b = ints[1];
        }

        static void WLine<T>(T s)
        {
            Console.WriteLine(s);
        }
        #endregion
    }
}

using System;
using System.IO;
using System.Linq;
namespace codechef
{
    public class Program{
            public static StreamWriter writer;

            public static void RealWork()
            {
                string input = Console.ReadLine();
                string match = "hello";
                int Ans = 0,pos=0;

                for (int i = 0; i < input.Length; i++)
                {
                    if (input[i] == match[pos])
                    {
                        pos++;
                        Ans++;
                        if (Ans == 5)
                        {
                            writer.Write("Yes");
                            return;
                        }
                    }
                }
                writer.Write("NO");
            }

            static void Main(string[] args)
            {
                writer = new StreamWriter(Console.OpenStandardOutput());
               // writer = new StreamWriter("output.txt");
                //Console.SetIn(new StreamReader(File.OpenRead("input.txt")));
                RealWork();
                writer.Close();
            }

            public static int intParse(string st)
            {
                int x = 0;
                for (int i = 0; i < st.Length; i++) { x = x * 10 + (st[i] - 48); }
                return x;
            }

    }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            int h, e, l, o;
            h = s.IndexOf('h') ;
            e = s.IndexOf('e',h+1) ;
            l = s.IndexOf('l',e+1) ;
            o = s.IndexOf('o',l+1) ;

            if (h<0 || e<0 || l<0 || o<0 || (s.Length < 6))
                Console.WriteLine("NO");
            else
            {
                int first_l, second_l;
                first_l = s.IndexOf("l");
                second_l = s.IndexOf("l", first_l+1);

                if (second_l<0)
                    Console.WriteLine("NO");
                else
                    Console.WriteLine("YES");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            String hellostr = "hello";
            String mstr = Console.ReadLine();
            int letter = 0;

            for (int i = 0; i < mstr.Length-1; i++)
                if (hellostr[letter] == mstr[i])
                    if(letter != 4) letter++;
            Console.WriteLine(letter == 4 ? "YES" : "NO:");

        }
    }
}

using System;

namespace codeforces_chechnevis
{
    class Program
    {
        static void Main()
        {
            bool a=true;
            string s;
            s = Console.ReadLine();
            for (int i= 0; i < s.Length-4;i++)
            {
                if(s[i]=='h' && a)
                {
                    while(s[i+1]=='h')
                    {
                        i++;
                    }
                    if(s[i+1]=='e')
                    {
                        while (s[i + 1] == 'e')
                        {
                            i++;
                        }
                        if (s[i + 1] == 'l')
                        {
                            i++;
                            if (s[i + 1] == 'l')
                            {
                                while (s[i + 1] == 'l')
                                {
                                    i++;
                                }
                                if (s[i + 1] == 'o')
                                {

                                    Console.WriteLine("YES");
                                    a = false;

                                }
                            }
                        }
                    }
                }
            }
            if(a)
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace WarmingUpC_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            string word = Console.ReadLine();
            int count = 0;
            for (int i = 0; i < word.Length; i++)
            {
                if (word[i] == 'h' && count == 0)
                {
                    count++;
                    continue;
                }
                if (word[i] == 'l' && count == 1)
                {
                    count++;
                    continue;
                }
                if (word[i] == 'l' && count == 2)
                {
                    count++;
                    continue;
                }
                if (word[i] == 'o' && count == 3)
                {
                    count++;
                    continue;
                }
                if (count == 4)
                {
                    Console.WriteLine("YES");
                    return;
                }
            }
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication10
{
    class Program
    {

        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            if(s.Contains("hello"))
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace Chat
{

  class ChattyBoy
  {

    static void Main(string[] args)
    {
      string s = Console.ReadLine();
      Regex condfilter = new Regex(s);
      if (condfilter.IsMatch("[a-z]*(?:hello)*") == true)
        Console.WriteLine("YES");
      else Console.WriteLine("NO");

    }

  }

}

using System;
using System.Collections.Generic;
using System.Diagnostics.Eventing.Reader;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Xml;

namespace CodeForces
{
    class ChatRoom
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            List<char> letters = new List<char>();
            int counter = 0;
            for (int i = 0; i < input.Length; i++)
            {
                if (letters.Contains(input[i]) == false)
                {
                    letters.Add(input[i]);
                    counter++;
                }
                else if (letters.Contains('l') == true)
                {
                    counter++;
                }
            }
            if (counter == 5) Console.WriteLine("NO");
            else Console.WriteLine("YES");
        }
    }
}

using System;
using System.Linq;

public class Program
{
	public static void Main()
	{
		string str = Console.ReadLine();
		string s = new string(str.Distinct().ToArray());
		if(s.Contains("helo")){
			Console.WriteLine("YES");
		}
		else{
			Console.WriteLine("NO");
		}
	}
}

using System;

namespace Watermelon
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            int[] index = new int[5];
            string hello = "hello";
            for (int i = 0; i < 5; i++)
            {
                index[i] = input.IndexOf(hello[i]);
            }
            bool answer = true;
            for (int i = 0; i < 4; i++)
            {
                if(index[i] > index[i+1])
                {
                    answer = false;
                    Console.WriteLine("NO");
                    break;
                }
            }
            if(answer == true)
            {
                Console.WriteLine("YES");
            }

        }
    }
}

using System;

namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine().ToLower();
            int size = s.Length;
            int count = 0;
            for(int i = 0; i < size; i++)
            {
                if (s[i] == 'h'&& count==0)
                    count++;
                else if(s[i] == 'e' && count == 1)
                    count++;
                else if (s[i] == 'l' && count == 2|| count == 3)
                    count++;
                else if (s[i] == '0' && count == 4)
                {
                    count++;
                    break;
                }
            }
            if (count == 4)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace A.Chat_room
{
    class Program
    {
        static void Main(string[] args)
        {
            string text = Console.ReadLine();
            string hello = "hello";
            if (string.Compare(text,hello)<0)
            {
                Console.WriteLine("NO");
            }
            else if (string.Compare(text, hello) > 0)
            {
                Console.WriteLine("YES");
            }

        }
    }
}

using System;
using System.Linq;
using System.Collections.Generic;

namespace Test1
{
    public class Test1
    {
        public static void Main()
        {
            string input = Console.ReadLine();
            List<char> letters = new List<char>();
            List<int> lcount = new List<int>();
            int cnt = 0;
            for (int i = 0; i < input.Length; i++)
            {
                if (letters.Count > 0)
                {
                    if (letters.Last() == input[i]) { cnt++; if (i == input.Length - 1) { lcount.Add(cnt); } }
                    else { lcount.Add(cnt); letters.Add(input[i]); cnt = 1; if (i == input.Length - 1) lcount.Add(cnt); }
                }
                else { letters.Add(input[i]); cnt++; }
            }

            string check = "";
            for (int i = 0; i < letters.Count(); i++) check += letters[i];
            string hello = "helo";
            bool matchFound = false;
            if (letters.Count >= 4)
            {
                for (int i = 0; i < letters.Count() - 3; i++)
                {
                    if (check.Substring(i, 4) == hello)
                    {
                        if (lcount[i + 2] >= 2) { matchFound = true; break; }
                    }
                }
            }

            Console.WriteLine(matchFound ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace problem2
{
    class Program
    {
        static void Main(string[] args)
        {

            string Hello = Console.ReadLine();
            Hello = Hello.ToLower();
            string temp = string.Empty;
            string helloWord = "hello";
            int cntr = 0;
            int result = 5;
            int index=0 ;

            for (int i = 0; i < helloWord.Length; i++)
            {
                int j = index;
                index = 0;
                for (; j < Hello.Length; j++)
                {

                    if (helloWord[i] == Hello[j])
                    {
                        if (Hello[j] == 'l')
                        { cntr++; }

                        if (j != 0)
                        {
                            if (Hello[j] == Hello[j - 1])
                            {
                                if (Hello[j] == 'l')
                                {

                                    if (cntr<3)
                                    {
                                        temp += Hello[j];
                                        j = Hello.Length;
                                    }
                                }
                                else
                                continue;
                            }

                            else
                            {

                                temp += Hello[j];
                                index = j+1;
                                j = Hello.Length;

                            }
                        }
                        else
                        {
                            temp += Hello[j];
                            index = j + 1;
                            j = Hello.Length;
                        }

                    }
                     result = helloWord.CompareTo(temp);
                    if (result == 0)
                    {
                        Console.WriteLine("YES");
                        i = helloWord.Length;
                    }

                }
            }

            if(result != 0)
            {
                Console.WriteLine("NO");
            }

        }

    }
}

using System;
using System.Collections.Generic;
using System.Text;
using System.Text.RegularExpressions;

namespace Chat
{

  class ChattyBoy
  {

    static void Main(string[] args)
    {
      string s = Console.ReadLine();
      Regex condfilter = new Regex(s);
      if (condfilter.IsMatch("^[a-z]*(?:hello)*$") == true)
        Console.WriteLine("YES");
      else Console.WriteLine("NO");

    }

  }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace codeforces
{
    class Program
    {
        static void Main(string[] args)
        {

            string hello = Console.ReadLine();
            string example = "[h]{1,}[e]{1,}[l]{2,}[o]{1,}";
            string result = hello[0].ToString();

            Console.WriteLine(Regex.IsMatch(hello,example)?"YES":"NO");
            //Console.ReadKey();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace training2
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
             bool _1=false;
             bool _2=false;
             bool _3=false;
             bool _4=false;
             int count = 0;
            for(int i=0;i<str.Length;i++)
            {
                if (str[i] == 'h')
                    _1 = true;
                if (str[i] == 'e')
                    _2 = true;
                if (str[i] == 'l')
                {
                    _3 = true;
                    count++;
                }
                if (str[i] == 'o')
                    _4 = true;
            }
            if (str.Length > 5 && _1 && _2 && count >= 2 && _4)
                Console.WriteLine("YES");
            else
                Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            if (s.Contains("hlelo")) Console.WriteLine("NO");
            else Console.WriteLine("YES");
            Console.Read();
        }
    }
}

using System;
class Chat_room
{
    static void Main(string[] args)
    {
        string s = Console.ReadLine().ToLower();
        char[] t = { 'h', 'e', 'l', 'l', 'o' };
        int loc = 0;
        for (int i = 0; i < s.Length; i++)
        {
            if(loc == t.Length)
            {
                Console.WriteLine("YES");
                break;
            }
            else if(s[i] == t[loc])
            {
                loc++;
            }
        }
        if(loc < t.Length)
        {
            Console.WriteLine("NO");
        }

    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeForces1
{
    class Program
    {
        static void Main(string[] args)
        {
            string inputString = Console.ReadLine();
            int l=0;
            for(int i =0; i<inputString.Length; i++)
            {
                if(inputString.Contains('l'))
                {
                    l++;
                }
            }
            if(inputString.Contains('h')
                && inputString.Contains('e')
                && inputString.Contains('o')
                && l>1)
            {
                Console.WriteLine("Yes");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            if (!s.Contains("hlelo")) Console.WriteLine("YES");
            else Console.WriteLine("NO");
            Console.Read();
        }
    }
}

using System;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        var input = Console.ReadLine();
        if (input.Count(c => c == 'l') > 1 && string.Join("", input.Distinct()) == "helo") Console.WriteLine("YES");
        else Console.WriteLine("NO");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;

internal class Program
{
    public static void Main(string[] args)
    {
        var s = Console.ReadLine();
        if (s.IndexOf('h') < s.IndexOf('e') &&
            s.IndexOf('e') < s.IndexOf("ll") &&
            s.IndexOf("ll") < s.IndexOf('o'))
            Console.WriteLine("YES");
        else
            Console.WriteLine("NO");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Ladder
{
    class Program
    {
        static void Main(string[] args)
        {
            string s;
            s = Console.ReadLine();
            int hIndex = s.IndexOf('h');
            int eIndex = s.IndexOf('e');
            int lIndex = s.IndexOf('l');
            int oIndex = s.IndexOf('o');
            if (hIndex == -1 || eIndex == -1 || lIndex == -1 || oIndex == -1)
            {
                Console.WriteLine("NO");
            }
            else
            {
                s = s.TrimStart('a','b','c','d','e','f','g','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
                s = s.TrimEnd('a','b','c','d','e','f','g','h','i','j','k','l','m','n','p','q','r','s','t','u','v','w','x','y','z');
                s = s.Replace('h', 'H');
                s = s.Replace('e', 'E');
                s = s.Replace('l', 'L');
                s = s.Replace('o', 'O');
                string smallword = "";
                for (int i=0; i<s.Length; i++)
                {
                    if (s[i] < 97 )
                    {
                        smallword += s[i];
                    }
                }
                if (smallword.Length < 5)
                {
                    Console.WriteLine("NO");
                }
                else
                {
                    int lCount = 0 , lastIndex=0;
                    for (int i=0; i<smallword.Length; i++)
                    {
                        if (smallword[i] == 'L')
                        {
                            lCount++;
                            lastIndex = i;
                        }
                    }
                    if (lCount < 2 || lastIndex < smallword.IndexOf('E') )
                    {
                        Console.WriteLine("NO");
                    }
                    else
                    {
                        bool ThereExist_an_L_Between_an_L_and_an_E = false;
                        for (int i = smallword.IndexOf('E')+1 ; i<lastIndex; i++)
                        {
                            if (smallword[i] == 'L')
                            {
                                ThereExist_an_L_Between_an_L_and_an_E = true;
                                break;
                            }
                        }
                        if (ThereExist_an_L_Between_an_L_and_an_E)
                        {
                            Console.WriteLine("YES");
                        }
                        else
                        {
                            Console.WriteLine("NO");
                        }
                    }
                }
            }
            //Console.ReadLine();
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            char[] input = Console.ReadLine().ToCharArray();
            string example = "hello";
            string output = string.Empty;
            int deleted = 0;
            for(int i=0;i<input.Length;i++) {
                if (input[i] == example[deleted]) {
                    output += input[i];
                    ++deleted;
                }
                if (output == "hello") {
                    Console.WriteLine("YES");
                    return;
                }
                ++i;
            }
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace cf58a
{
    class Program
    {
        static void Main(string[] args)
        {
            string x;
            x = Console.ReadLine();

            int z=0;
            for(int i=0; i<x.Length; i++){
                if(z==0){
                    if(x[i]=='h'){
                        z++;
                    }
                }
                else if(z==1){
                    if(x[i]=='e'){
                        z++;
                    }
                    else if(x[i]=='h'){
                        continue;
                    }
                    else{
                        z=0;
                    }
                }
                else if(z==2){
                    if(x[i]=='l'){
                        z++;
                    }
                    else if(x[i]=='e'){
                        continue;
                    }
                    else{
                        z=0;
                    }
                }
                else if(z==3){
                    if(x[i]=='l'){
                        z++;
                    }
                    else{
                        z=0;
                    }
                }
                else if(z==4){
                    if(x[i]=='o'){
                        z++;
                    }
                    else if(x[i]=='l'){
                        continue;
                    }
                    else{
                        z=0;
                    }
                }
                else if(z==5){
                    break;
                }
            }
            if(z==5){
                Console.Write("YES");
            }
            else{
                Console.Write("NO");
            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace problem2
{
    class Program
    {
        static void Main(string[] args)
        {

            string Hello = Console.ReadLine();
            Hello = Hello.ToLower();
            string temp = string.Empty;
            string helloWord = "hello";
            int cntr = 0;
            int result = 5;
            int index=0 ;

            for (int i = 0; i < helloWord.Length; i++)
            {
                int j = index;
                for (; j < Hello.Length; j++)
                {

                    index  = 0;
                    if (helloWord[i] == Hello[j])
                    {
                        if (Hello[j] == 'l')
                        { cntr++; }

                        if (j != 0)
                        {
                            if (Hello[j] == Hello[j - 1])
                            {
                                if (Hello[j] == 'l')
                                {

                                    if (cntr<3)
                                    {
                                        temp += Hello[j];
                                    }
                                }
                                continue;
                            }

                            else
                            {

                                temp += Hello[j];
                                index = j+1;
                                j = Hello.Length;

                            }
                        }
                        else
                        {
                            temp += Hello[j];
                            index = j + 1;
                            j = Hello.Length;
                        }

                    }
                     result = helloWord.CompareTo(temp);
                    if (result == 0)
                    {
                        Console.WriteLine("YES");
                        i = helloWord.Length;
                    }

                }
            }

            if(result != 0)
            {
                Console.WriteLine("NO");
            }

        }

    }
}

using System;
using System.Linq;

public class Program
{
	public static void Main()
	{
		string str = Console.ReadLine();
		string s = new string(str.Distinct().ToArray());
		if(s.Contains("helo")){
			Console.WriteLine("YES");
		}
		else{
			Console.WriteLine("NO");
		}
	}
}

using System;
using System.Linq;

public class Program
{
    private static void Main()
    {
        var str = Console.ReadLine();
        if ("hello".All(c => str.Contains(c)))
        {
            if (str.IndexOf("h") < str.IndexOf("e"))
            {
                str = str.Remove(0, str.IndexOf('e'));
                if (str.IndexOf("e") < str.IndexOf("l"))
                {
                    str = str.Remove(0, str.IndexOf('l'));

                    if (str.IndexOf("l") < str.LastIndexOf("l"))
                    {
                        str = str.Remove(0, str.LastIndexOf('l'));

                        if (str.LastIndexOf("l") < str.IndexOf("o"))
                        {
                            Console.WriteLine("YES");
                            return;
                        }
                    }
                }
            }
        }
        Console.WriteLine("NO");
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace prog_moh
{
    class Program
    {
        static void Main(string[] args)
        {

                string hello = "hello";
                string en_hello = Console.ReadLine().ToLower();
                string new_hello = null;

                foreach (char h in hello)
                {
                    string co = "";
                    for (int a = 0; a < en_hello.Length; a++)
                        if (h == en_hello[a])
                        {
                            new_hello = new_hello + en_hello[a];
                            for (int i = a+1; i < en_hello.Length; i++)
                            {
                                co =co+ en_hello[i];
                            }
                            break;

                        }
                    en_hello = co;
                }

                if (hello == new_hello)
                   Console.WriteLine("yes");
                else
                   Console.WriteLine("no");
                }
      }
    }

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;

namespace Implemetation
{
    class Program
    {
        static void Main(string[] args)
        {
            //string input = Console.ReadLine();
            //Console.WriteLine(Football(input));
            //int result=Petya_and_Strings(Console.ReadLine(), Console.ReadLine());
            //Console.WriteLine(result);
            //Helpful_Maths(Console.ReadLine());
            //Word_Capitalization(Console.ReadLine());
            //Taxi(int.Parse(Console.ReadLine()));
            //Console.WriteLine(Math.Ceiling((double)13/5));

            //Console.WriteLine(Regex.IsMatch(Console.ReadLine(), @"[1-4]((\s[1-4])+)?"));

            string text = Console.ReadLine();
            if (text.Length > 100 || text.Length < 1) return;
            if (!Regex.IsMatch(text, @"^[a-z]+$")) return;

            string Result = "";
            char[] word = { 'h', 'e', 'l', 'l', 'o' };
            int position = 0;
            foreach (char c in text)
            {

                if (word[position] == c)
                {
                    Result += c;
                    position++;
                    if (position == word.Length) break;
                }
                else
                {
                    if (Result != "")
                    {
                        if (Result[position - 1] == c) continue;
                        else break;
                    }
                }

            }

            //Console.WriteLine(Result.Contains("hello")?"YES":"NO");
            Console.WriteLine(Result.Equals("hello")?"YES":"NO");
        }
        static void Taxi(int input)
        {
            if (input < 1 || input > Math.Pow(10, 5)) return;
            string strnumbers = Console.ReadLine();
            if (!Regex.IsMatch(strnumbers, @"[1-4](\s[1-4])+")) return;

            int[] nums=strnumbers.Split(' ').Select(num=>int.Parse(num)).ToArray();
            if (nums.Length != input) return;

            Console.WriteLine(Math.Ceiling((double)nums.Sum() / 4));

        }
        static void Word_Capitalization(string input)
        {
            if (input.Length > Math.Pow(10, 3)) return;

            string result;

            if (input[0] >= 97)
            {
                char c = input[0];
                int cint = c - 32;
                char res = (char)cint;
                result = res + input.Substring(1, input.Length - 1);
                Console.WriteLine(result);
            }
            else
            {
                Console.WriteLine(input);
            }
        }
        static void Helpful_Maths(string input)
        {
            string pattern = @"[1-3]{1,100}\+?";
            if (!Regex.IsMatch(input, pattern)) return;

            List<int> numbers = input.Split('+').Select(item => int.Parse(item)).ToList();
            numbers.Sort();
            string Result = "";

            foreach (int i in numbers)
                Result += i + "+";

            Console.WriteLine(Result.Substring(0, Result.Length - 1));
        }
        static int Petya_and_Strings(params string[] inputs)
        {
            if (inputs[0].Length != inputs[1].Length) return -1;

            return inputs[0].ToLower().CompareTo(inputs[1].ToLower());
        }
        static string Football(string input)
        {
            //string Pattern = @"^[0-1]{1,100}$";
            if (!Regex.IsMatch(input, @"^[0-1]{1,100}$")) return "NO";

            return input.Contains("0000000") || input.Contains("1111111") ? "YES" : "NO";
        }
        static bool Match(string text)
        {
            return Regex.IsMatch(text, @"^[0-1] [0-1] [0-1]$", RegexOptions.Singleline);
        }
        static int Team(int Problems)
        {
            string temp;
            int count = 0;
            string[] t = { "1 1 1", "1 1 0", "1 0 1", "0 1 1" };
            for (int i = 0; i < Problems; i++)
            {
                temp = Console.ReadLine();
                if (!Match(temp)) return 0;
                if (t.Contains(temp))
                {
                    count++;
                }
            }
            return count;
        }

        static int BitPlusPlus(int Operations)
        {

            int Result = 0;
            string temp;
            if (Operations >= 1 && Operations <= 150)
            {
                for (int i = 0; i < Operations; i++)
                {
                    temp = Console.ReadLine();
                    if (!Regex.IsMatch(temp, @"^([\+-]{2})?[a-zA-Z]([\+-]{2})?$")) return 0;

                    int index = temp.IndexOfAny(new char[] { '-', '+' });
                    if (index != -1 && index > 2)
                    {
                        if (temp[index] == '+')
                            Result++;
                        else
                            Result--;
                    }
                    else if (index != -1 && index < 2)
                    {
                        if (temp[index] == '+')
                            ++Result;
                        else
                            --Result;
                    }

                }
            }
            return Result;
        }
    }
}

using System;
class Test {
    static void Main(){
        string line = Console.ReadLine();
        string tmp = "";
        line.ToLower();
        for (int i = 0 ; i < line.Length ; i++){
            if(i == 0){
                tmp += line[i];
            } else {
                if(line[i] == 'l' && line[i-1] != 'l'){
                    tmp += line[i];
                }
                if(line[i] != line[i-1]){
                    tmp += line[i];
                }
            }
        }
        if(tmp.IndexOf("hello") != -1){
            Console.WriteLine("YES");
        } else {
            Console.WriteLine("NO");
        }
    }
}

using System;
class Program
{
    static void Main(string[] args)
    {
        string name = Console.ReadLine();
        string ans = "NO";

        for (int i = 0; i < name.Length -3; i++)
        {
            if (name[i] == 'h')
            {
                for(int i2=i+1;i2<name.Length-2;i2++)
                {
                    if (name[i2] == 'h') continue;
                    else if(name[i2]=='e')
                    {
                        for(int i3 = i2 + 1; i3 < name.Length-1; i3++)
                        {
                            if (name[i3] == 'e') continue;
                            else if (name[i3] == 'l')
                            {
                                for (int i4 = i3 + 1; i3 < name.Length; i4++)
                                {
                                    if (name[i4] == 'l') continue;
                                    else if (name[i4] == 'o') ans = "YES";
                                    else break;
                                }
                            }
                            else break;
                        }
                    }
                    else break;
                }
            }
            if (ans == "YES")
                break;
        }
        Console.WriteLine(ans);
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Chat_room_58_A_final
{
    class Program
    {
        static void Main(string[] args)
        {
            string input = Console.ReadLine();
            Console.WriteLine(checkChatting(input));
        }

        public static string checkChatting(string word)
        {
            List<int> indeces = new List<int>();
            string helloWord = "hello";
            int j = 0;
            for (int i = 0; i < word.Length; i++)
            {
                if (word[i] == helloWord[j])
                {
                    j++;
                    if (j == 4)
                        return "YES";
                }
                //int index = word.IndexOf(helloWord[i]);
                // indeces.Add(index);
                // //replace the found char with another dummy one
                // char[] ch = word.ToCharArray();
                // ch[index] = '-';
                // word = new string(ch);
            }
            return "NO";
        }
        public static bool IsIndecesIncreasing(List<int> indeces)
        {
            bool increase = true;
            for (int i = 0; i < indeces.Count - 1; i++)
            {
                if (indeces[i] > indeces[i + 1])
                    increase = false;
            }
            return increase;
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication35
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            for(int i = 0; i<str.Length; i++)
            {
                if (str[i] == 'h')
                {
                        for(i++; i<str.Length; i++)
                        {
                            if (str[i] == 'e')
                            {
                                for (i++; i < str.Length; i++)
                                {
                                    if (str[i] == 'l')
                                    {
                                        for (i++; i < str.Length; i++)
                                        {
                                            if (str[i] == 'l')
                                            {
                                                for (i++; i < str.Length; i++)
                                                {
                                                    if (str[i] == 'o')
                                                    {
                                                        Console.WriteLine("YES");
                                                        break;
                                                    }

                                                }
                                            }
                                            else
                                                if (i == str.Length - 1)
                                                break;
                                        }
                                    }
                                    else
                                        if (i == str.Length - 1)
                                        break;
                                }
                            }
                            else
                                if (i == str.Length - 1)
                                break;

                        }
                }
                else
                {
                    if(i==str.Length-1)
                    Console.WriteLine("NO");

                }

            }
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            if (s.Contains("ahhellllloou")) Console.WriteLine("YES");
            else Console.WriteLine("NO");
            Console.Read();
        }
    }
}

using System;
using System.Linq;

namespace ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string word = Console.ReadLine();

            string hello = "hello";
            int i = 0;
            char current = hello[i];

            foreach (char c in word)
            {
                if (c == current && i < 4)
                {
                    i++;
                    current = hello[i];
                }
            }

            if (i == 4)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

            Console.ReadLine();
        }
    }
}

using System;

namespace CF_Hello {
    class Program {
        static void Main(string[] args) {
            string input = Console.ReadLine();
            string example = "hello";
            int deleted = 0;
            for(int i=0;i<input.Length;i++) {
                if (input[i] == example[0]) {
                    example.Remove(0, 1);
                    if (example == string.Empty) {
                        Console.WriteLine("YES");
                        return;
                    }
                }

            }
            Console.WriteLine("NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();

            bool h, e, l, o;
            h = e = l = o = false;

            if (s.Contains('h') == true)
            {
                if (s.IndexOf('h') < s.IndexOf('e'))
                {
                    h = true;
                }

            }
            else
            {
                Console.WriteLine("NO");
                goto End;
            }

            if (s.Contains('e') == true)
            {
                if (s.IndexOf('e') < s.IndexOf('l'))
                {
                    e = true;
                }

            }
            else
            {
                Console.WriteLine("NO");
                goto End;
            }

            if (s.Contains('l') == true)
            {
                int l1 = 0;
                for (int i = s.IndexOf('e'); i < s.Length - 1; i++)
                {
                    if (s[i] == 'l')
                    {
                        l1++;
                    }
                }

                if (l1 >= 2)
                {
                    l = true;
                }
            }
            else
            {
                Console.WriteLine("NO");
                goto End;
            }

            if (s.Contains('o') == true)
            {
                if (s.IndexOf('l') < s.IndexOf('o'))
                {
                    o = true;
                }
            }
            else
            {
                Console.WriteLine("NO");
                goto End;
            }

            if ((h == true) && (e == true) && (l == true) && (o == true))
            {
                Console.WriteLine("YES");
            }
            End:
            Console.Read();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;

class Problem
{
    public static void Main()
    {
        var allowed = new Dictionary<char, int>
        {
            { 'h', 1 },
            { 'e', 1 },
            { 'l', 2 },
            { 'o', 1 }
        };

        var prev = new Dictionary<char, char>
        {
            { 'e', 'h' },
            { 'l', 'e' },
            { 'o', 'l' }
        };

        string word = Console.ReadLine();

        for (int i = 0; i < word.Length; i++)
        {
            if (allowed.ContainsKey(word[i]))
            {
                if (word[i] == 'h')
                {
                    allowed[word[i]]--;
                }
                else
                {
                    if (word[i] == 'l')
                    {
                        if (allowed['l'] == 2)
                        {
                            if (allowed[prev['l']] <= 0)
                            {
                                allowed['l']--;
                            }
                        }
                        else
                        {
                            allowed['l']--;
                        }
                    }
                    else
                    {
                        if (allowed[prev[word[i]]] <= 0)
                        {
                            allowed[word[i]]--;
                        }
                    }
                }
            }
        }

        Console.WriteLine(allowed.Select(x => (int)x.Value).Sum() <= 0 ? "YES" : "NO");
        //var letters = new LinkedList<char>(Console.ReadLine().ToCharArray());

        //LinkedListNode<char> current = letters.First;

        //while (current != null)
        //{
        //    var next = current.Next;
        //    if (!allowed.Contains(current.Value))
        //    {
        //        letters.Remove(current);
        //    }
        //    else if (current.Value == 'h')
        //    {
        //        if (current.Next != null && current.Next.Value != 'e')
        //        {
        //            letters.Remove(current.Next);
        //        }
        //    }
        //    else if (current.Value == 'e')
        //    {
        //        if (current.Next != null && current.Next.Value != 'l')
        //        {
        //            letters.Remove(current.Next);
        //        }
        //    }
        //    else if (current.Value == 'l')
        //    {
        //        if (current.Next != null)
        //        {
        //            if (current.Previous != null && current.Previous.Value == 'e' && current.Next.Value != 'l')
        //            {
        //                letters.Remove(current.Next);
        //            }
        //            else if (current.Previous != null && current.Previous.Value == 'l' && current.Next.Value != 'o')
        //            {
        //                letters.Remove(current.Next);
        //            }
        //        }
        //    }
        //    current = next;
        //}

    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _58A_ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            bool h, e, l, o;
            h = s.Contains('h');
            e = s.Contains('e');
            l = s.Contains('l');
            o = s.Contains('o');
            if (h && e && l && o && (s.Length < 6))
                Console.WriteLine("NO");
            else
                Console.WriteLine("YES");

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CF32ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string a = Console.ReadLine();
            for(int i=0;i<a.Length;i++)
            {
                if(a[i]=='h' || a[i]=='e' || a[i]=='l' || a[i]=='o')
                {

                }
                else
                {
                    int index = a.IndexOf(a[i]);
                    a = a.Remove(index, 1);
                }
            }
            int got = 0;
            for(int i=0;i<a.Length;i++)
            {
                switch(a[i])
                {
                    case 'h':
                        if (got == 0)
                            got++;
                        else
                        {
                            int index = a.IndexOf(a[i]);
                            a = a.Remove(index, 1);
                        }
                        break;
                    case 'e':
                        if (got == 1)
                            got++;
                        else
                        {
                            int index = a.IndexOf(a[i]);
                            a = a.Remove(index, 1);
                        }
                        break;
                    case 'l':
                        if(got==2 || got ==3)
                        {
                            got++;
                        }
                        else
                        {
                            int index = a.IndexOf(a[i]);
                            a = a.Remove(index, 1);
                        }
                        break;
                    case 'o':
                        if (got == 4)
                        {
                            got++;
                        }
                        else
                        {
                            int index = a.IndexOf(a[i]);
                            a = a.Remove(index, 1);
                        }
                        break;
                }
            }
            if(a=="hello")
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
            Console.ReadLine();
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ChatRoom
{
    class Program
    {
        static void Main(string[] args)
        {
            string IN = Console.ReadLine();
            char[] InC = IN.ToCharArray();
            char[] sin = { 'h', 'e', 'l', 'l', 'o' };
            int c = 0;
            int index=0;
            for (int i = 0; i < InC.Length; i++)
            {
                    if(InC[i]=='h')
                    {
                        index = i;
                    }
                for (int d = 0; d < sin.Length; d++)
                {
                    if(InC[i]==sin[d])
                    {
                        if(index<i)
                        c++;
                        break;
                    }
                }
            }
            if (c == sin.Length-1) Console.WriteLine("yes");
            else Console.WriteLine("No");

        }
    }
}

using System;
using System.Linq;
using System.Text;
using System.Collections.Generic;

	// OLYASHAA_FOREVER

class MainClass
{
	public static void Main(string[] args)
	{
		bool h, e, l, l1, o;
		h = e = l = l1 = o = false;
		string s = Console.ReadLine();
		for (int i = 0; i < s.Length; ++i)
		{
			if (s[i] == 'h')
				h = true;
			else if (s[i] == 'e' && h == true)
				e = true;
			else if (s[i] == 'l' && e == true)
				l = true;
			else if (s[i] == 'l' && l == true)
				l1 = true;
			else if (s[i] == 'o' && l1 == true)
				o = true;
		}
		Console.Write(o == true ? "YES" : "NO");
	}
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            String input;
            String hello = "hello";

            input = Console.ReadLine();

            for (int i = 0; i < input.Length-1; i++)
            {
                if (hello.Length == 0)
                {
                    break;
                }
                if (hello[0] == input[i])
                {
                    hello = hello.Substring(1);
                }

            }
            if (hello.Length > 0)
            {
                Console.WriteLine("NO");
            }
            else
            {
                Console.WriteLine("YES");
            }

        }
    }

}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace codeforces
{
    class chat_room2
    {
        static void Main(string[] args)
        {
            string a = Console.ReadLine().ToLower(), b="";
            for(int i = 0; i < a.Length; i++)
            {
                if(a[i] == 'h')
                {
                    b += "h";
                    for(int j = i; j < a.Length; j++)
                    {
                        if(a[j] == 'e')
                        {
                            b += "e";
                            for(int k = j; k < a.Length; k++)
                            {
                                if(a[k] == 'l')
                                {
                                    b += "l";
                                    k++;
                                    for(int l = k; l < a.Length; l++)
                                    {
                                        if (a[l] == 'l')
                                        {
                                            b += "l";
                                            for(int m = l; m < a.Length; m++)
                                            {
                                                if(a[m] == 'o')
                                                {
                                                    b += "o";
                                                    break;

                                                }
                                            }
                                            break;

                                        }
                                    }
                                    break;

                                }
                            }
                            break;

                        }
                    }
                    break;

                }
            }
            Console.WriteLine(b);
            if (b == "hello")
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }

        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Problem_Solving
{
    class Program
    {
        static void Main(string[] args)
        {
            // The code provided will print ‘Hello World’ to the console.
            // Press Ctrl+F5 (or go to Debug > Start Without Debugging) to run your app.
            //Console.WriteLine("Hello World!");
            //Console.ReadKey();
            var target = "hello";
            string testString;
            testString = Console.ReadLine();
            int index = 0;
            var res = "";
            foreach (var character in target)
            {
                var x = testString.IndexOf(character);
                if (testString.IndexOf(character) >= index)
                    index = testString.IndexOf(character);
                else
                {
                    res = "NO";
                    break;
                }
            }
            if(res == "NO")
                Console.Write("NO");
            else
                Console.Write("YES");

            // Go to http://aka.ms/dotnet-get-started-console to continue learning how to build a console app!
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication12
{
    class Program
    {
        static void Main(string[] args)
        {
            char[] s = Console.ReadLine().ToArray();
            char[] hello = { 'h', 'e', 'l', 'l', 'o' };
            int[] index = new int[hello.Length];
            bool answer = true;
            for (int i = 0; i < hello.Length; i++)
            {
                for (int u = 0; u < s.Length; u++)
                {
                    if (hello[i] == s[u])
                    {
                        if (i != 0 && index[i - 1] == u)
                        {
                        }
                        else
                        {
                            index[i] = u;
                            break;
                        }
                    }
                }
                if (i != 0 && index[i - 1] > index[i])
                {
                    answer = false;
                    break;
                }
            }
            Console.Write(answer ? "YES" : "NO");
        }
    }
}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Lv1Phase1
{
    class Program
    {
        static void Main(string[] args)
        {
            int checker = 0;
            string msg = Console.ReadLine();
            for (int i = 0; i < msg.Length; i++)
            {
                if ((msg[i] == 'h' || msg[i] == 'H') && checker == 0)
                {
                    checker++;
                }
                else if ((msg[i] == 'e' || msg[i] == 'E') && checker == 1)
                {
                    checker++;
                }
                else if ((msg[i] == 'l' || msg[i] == 'L') && checker == 2)
                {
                    checker++;
                }
                else if ((msg[i] == 'l' || msg[i] == 'L') && checker == 3)
                {
                    checker++;
                }
                else if ((msg[i] == 'o' || msg[i] == 'O') && checker == 4)
                {
                    break;

                }
                else checker = 0;
            }
            if (checker == 4) Console.WriteLine("YES");
            else Console.WriteLine("NO");
            //Console.ReadKey();
        }
    }
}

using System;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        var input = Console.ReadLine();
        if (input.Contains('h'))
            if (input.LastIndexOf('e') > input.IndexOf('h'))
                if (input.LastIndexOf('l') > input.IndexOf('e'))
                    if (input.LastIndexOf('l') > input.IndexOf('l'))
                        if (input.LastIndexOf('o') > input.LastIndexOf('l'))
                        {
                            Console.WriteLine("YES");
                            return;
                        }
        Console.WriteLine("NO");
    }
}