#include <bits/stdc++.h>
using namespace std;
int caseno = 1;
typedef long long LL;
typedef unsigned long long ULL;
template <class T>
inline void SWAP(T &a, T &b) {
  T t = a;
  a = b;
  b = t;
}
inline LL POW(LL base, LL power) {
  LL res = base;
  if (power == 0) return 1;
  for (int I = 0; I < power - 1; I++) res *= base;
  return res;
}
int ToInt(string s) {
  int r = 0;
  istringstream sin(s);
  sin >> r;
  return r;
}
double ToDouble(string s) {
  double r = 0;
  istringstream sin(s);
  sin >> r;
  return r;
}
string ToString(int n) {
  string s;
  stringstream convert;
  convert << n;
  s = convert.str();
  return s;
}
const int SIZE = 1e5 + 10;
int ar[SIZE];
int main() {
  std::ios_base::sync_with_stdio(0);
  int T, I, J, K, N, n, m, cnt = 0, len, mix = 0, even = 0, zero = 0;
  cin >> N;
  for (I = 0; I < N; I++) {
    cin >> ar[I];
    int r = ar[I] % 10;
    if (ar[I] % 4 == 0)
      cnt++;
    else if ((ar[I] & 1))
      mix++;
    else if (r == 0) {
      mix++;
      zero++;
    } else if (ar[I] % 2 == 0)
      even++;
  }
  if (cnt == N)
    cout << "Yes\n";
  else if (even == 0) {
    if (cnt >= mix || cnt + 1 == mix)
      cout << "Yes\n";
    else
      cout << "No\n";
  } else {
    if (zero == 0) {
      if (cnt >= mix)
        cout << "Yes\n";
      else
        cout << "No\n";
    } else if (even >= zero)
      cout << "Yes\n";
    else
      cout << "No\n";
  }
  return 0;
}
