#include <bits/stdc++.h>
using namespace std;
int dy[4] = {0, 0, 1, -1};
int dx[4] = {1, -1, 0, 0};
int dxx[8] = {0, 0, 1, 1, 1, -1, -1, -1};
int dyy[8] = {1, -1, 0, 1, -1, 0, 1, -1};
long long m = 1000000007;
long long gcd(long long x, long long y) {
  long long m = max(x, y), n = min(x, y);
  if (m % n == 0)
    return n;
  else
    return gcd(m % n, n);
}
long long lcm(long long x, long long y) { return x / gcd(x, y) * y; }
long long myPow(long long x, long long n, long long m) {
  if (n == 0) return 1;
  if (n % 2 == 0)
    return myPow(x * x % m, n / 2, m);
  else
    return x * myPow(x, n - 1, m) % m;
}
int a[5];
int main() {
  int N;
  cin >> N;
  long long cnt = 0;
  for (int i = 0; i < N; i++) {
    long long x;
    cin >> x;
    a[x % 4]++;
  }
  if (a[2] == 0) {
    if (a[1] <= a[0] + 1) {
      cout << "Yes" << endl;
    } else
      cout << "No" << endl;
  } else {
    if (a[1] <= a[0])
      cout << "Yes" << endl;
    else
      cout << "No" << endl;
  }
}
