#include <bits/stdc++.h>
using namespace std;
const long long INF = 10000000000000000001;
struct edge {
  int to, cost;
};
int dy[] = {0, 0, 1, -1};
int dx[] = {1, -1, 0, 0};
struct Road {
  double cost;
  int a, b;
};
struct pos {
  int x, y, cost;
};
int main() {
  int n;
  int o = 0, x = 0;
  int e = 0;
  cin >> n;
  for (int i = 0; i < n; ++i) {
    long long a;
    cin >> a;
    if (a % 4 == 0)
      o++;
    else if (a == 2)
      e++;
    else
      x++;
  }
  int f = 0;
  if (e == 1) {
    x++;
    e = 0;
  }
  if (o + 1 < x) f = 1;
  if (x == o + 1) {
    if (e > 0) f = 1;
  }
  if (f == 0)
    cout << "Yes" << endl;
  else
    cout << "No" << endl;
  return 0;
}
