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

namespace AtCoder._20190209みんプロ
{
    class Pair
    {
        public int a, b;
    }
    class B
    {
        List<Pair> pair = new List<Pair>();
        List<int> Convert(IEnumerable<string> str)
        {
            var res = new List<int>();
            foreach (var i in str)
            {
                var data = int.Parse(i);
                res.Add(data);
            }
            return res;
        }


        public void Solve()
        {
            string input;
            pair.Clear();
            while ((input = Console.ReadLine()) != null)
            {
                var data = input.Split(' ');
                var tmp = Convert(data);
                pair.Add(new Pair() { a = tmp[0] - 1, b = tmp[1] - 1 });

            }
            /*
            foreach (var i in pair)
            {
                Console.WriteLine(i.a + " " + i.b);
            }
            */
            MakeAnser();
        }
        List<int> use;
        List<int> mati;
        public void MakeAnser()
        {
            use = new List<int>(pair.Count);
            for (int i = 0; i < pair.Count; i++)
            {
                use.Add(0);
            }
            mati = new List<int>(4);
            for (int i = 0; i < 4; i++)
            {
                mati.Add(0);
            }
            //Console.WriteLine(use.Count + " " + mati.Count);

            var result = false;
            for (int i = 0; i < 4; i++)
            {
               // Console.WriteLine("Start " + i);
                result = bfs(i) | result;
            }
            if (result)
            {
                Console.WriteLine("YES");
            }
            else
            {
                Console.WriteLine("NO");
            }
        }

        public bool AllUse()
        {
            foreach (var i in use)
            {
                if (i != 1)
                {
                    return false;
                }
            }
            foreach (var i in mati)
            {
                if (i != 1)
                {
                    return false;
                }
            }
            return true;
        }

        public bool bfs(int x)
        {
            //Console.WriteLine(x);
            mati[x] = 1;
            if (AllUse())
            {
                return true;
            }
            bool res = false;
            for (int i = 0; i < pair.Count; i++)
            {
                if (use[i] == 1)
                {
                    continue;
                }
                else
                {
                    if (pair[i].a == x)
                    {
                        //Console.WriteLine(pair[i].a + " ->" + pair[i].b);
                        use[i] = 1;
                        res = res | bfs(pair[i].b);
                        use[i] = 0;
                    }
                    if (pair[i].b == x)
                    {
                        //Console.WriteLine(pair[i].b + " ->" + pair[i].a);
                        use[i] = 1;
                        res = res | bfs(pair[i].a);
                        use[i] = 0;
                    }
                }
            }
            mati[x] = 0;
            //Console.WriteLine(res);
            return res;
        }


        static void Main(string[] args)
        {
            new B().Solve();
        }
    }
}


Measured memory_bytes: 13268