#include <bits/stdc++.h>
using namespace std;
template <class T>
bool chmax(T &a, const T &b) {
  if (a < b) {
    a = b;
    return 1;
  }
  return 0;
}
template <class T>
bool chmin(T &a, const T &b) {
  if (b < a) {
    a = b;
    return 1;
  }
  return 0;
}
int dy[] = {0, 1, 0, -1};
int dx[] = {1, 0, -1, 0};
long long gcd(long long a, long long b) {
  if (b == 0) return a;
  return gcd(b, a % b);
}
int main() {
  long long n;
  cin >> n;
  long long a[n];
  for (long long i = (0); i < (n); i++) cin >> a[i];
  long long insu[3] = {0, 0, 0};
  for (long long i = (0); i < (n); i++) {
    if (a[i] % 4 == 0)
      insu[2]++;
    else if (a[i] % 2 == 0)
      insu[1]++;
    else
      insu[0]++;
  }
  if (insu[1] != 0)
    insu[0]++;
  else if (insu[0] <= insu[2] + 1)
    cout << "Yes" << endl;
  else
    cout << "No" << endl;
}
