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

namespace ClassLibrary1
{
    public class ListNode
    {
        public int val;
        public ListNode next;
        public ListNode(int x) { val = x; }
    }

    
    public class Class1
    {
        static List<string> cons = new List<string>();
        static void Main(string[] args)
        {
            string str = Console.ReadLine();
            int n = int.Parse(str);
            string[] n2 = Console.ReadLine().Split(' ');

            bool initialvalidation = true;
            int? a = null;
            int? b = null;
            int? c = null;
            int ac = 0;
            int bc = 0;
            int cc = 0;

            for(int i=0; i<n; i++)
            {
                var nn = Int32.Parse(n2[i]);
                if (nn > 0) initialvalidation = false;

                if (a == null)
                {
                    a = nn;
                }
                else if (a == nn)
                {
                    ac++;
                }
                else if (b == null)
                {
                    b = nn;
                }
                else if(b == nn)
                {
                    bc++;
                }
                else if (c == null)
                {
                    c = nn;
                }
                else if (c == nn)
                {
                    cc++;
                } else
                {
                    Console.WriteLine("No");
                    return;
                }
            }

            if (initialvalidation)
            {
                Console.WriteLine("Yes");
                return;
            }

            if ( c == null)
            {
                if (ac == bc * 2 || bc == ac * 2)
                {
                    Console.WriteLine("Yes");
                } else
                {
                    Console.WriteLine("No");
                }
                return;
            }

            if (b == null || c == null
                || ac != bc || bc != cc || ac != cc
                || !calc(a.Value, b.Value, c.Value) )
            {
                Console.WriteLine("No");
                return;
            }
            Console.WriteLine("Yes");
        }


        static bool calc( int a, int b, int c)
        {
            while(true)
            {
                if (a == 0 && b == 0 && c == 0) return true;
                var a2 = a % 2;
                a = a / 2;
                var b2 = b % 2;
                b = b / 2;
                var c2 = c % 2;
                c = c / 2;

                if ((a2 + b2 + c2) % 2 != 0) return false;
            }

        }
    }


}
