using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static System.Math;
using static System.Console;
using static CS_Contest.Utils;

namespace CS_Contest {
	using Li = List<int>;
	using LLi = List<List<int>>;
    class Program {
        static void Main(string[] args) {
			new Calc().Solve();
			return;
        }

		private class Calc {
			public void Solve() {
				int N = ReadInt();
				Li list = ReadInt(' ');
				int four = list.Count(x => x % 4 == 0);
				int two = list.Count(x => x == 2);

				if (list.All(x => x % 2 == 0)) {
					Yes();
					return;
				}

				if (four == 0&&N!=two) {
					No();
					return;
				}
				
				N -= two / 2;

				if (N / 2 <= four) Yes();
				else No();
				return;
			}
		}
    }

	
	
    public static class Utils {
        public static void WL(this object obj) => WriteLine(obj);
        public static void WL(this string obj) => WriteLine(obj);
        public static void WL<T>(this IEnumerable<T> list) => list.ToList().ForEach(x => x.WL());
		public static int ReadInt() => int.Parse(ReadLine());
		public static List<int> ReadInt(char s) => ReadLine().Split(s).Select(int.Parse).ToList();
		public static long ReadLong() => long.Parse(ReadLine());
		public static List<long> ReadLong(char s) => ReadLine().Split(s).Select(long.Parse).ToList();
		public static void REP(int n,Action<int> act) {
			for (int i = 0; i < n; i++) {
				act(i);
			}
		}
		public static void Yes() => "Yes".WL();
		public static void No() => "No".WL();
    }
}
