#include <bits/stdc++.h>
using namespace std;
constexpr int MOD = 1e9 + 7;
constexpr int INF = INT32_MAX;
constexpr int MAXN = 2e5 + 10;
constexpr double eps = 1e-8;
using ll = long long;
using Pii = pair<int, int>;
using Pll = pair<ll, ll>;
using Vec = vector<int>;
template <class T>
void Min(T &a, T b) {
  if (b < a) a = b;
}
template <class T>
void Max(T &a, T b) {
  if (b > a) a = b;
}
ll N, M, K, T;
vector<ll> A;
void Solution() {
  M = 70;
  vector<vector<ll>> cnt(M, vector<ll>());
  for (int i = (int)(0); i < (int)(N); ++i) {
    int k = 0;
    while (((1LL << k) & A[i]) == 0) {
      ++k;
    }
    cnt[k].emplace_back(A[i]);
  }
  int idx = 0;
  int su = 0;
  for (int i = (int)(0); i < (int)(M); ++i) {
    su += cnt[i].size();
    if (cnt[i].size() > cnt[idx].size()) idx = i;
  }
  cout << su - cnt[idx].size() << '\n';
  for (int i = (int)(0); i < (int)(M); ++i) {
    if (i != idx) {
      for (ll e : cnt[i]) {
        cout << e << ' ';
      }
    }
  }
  cout << '\n';
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr), cout.tie(nullptr);
  while (cin >> N) {
    A.resize(N);
    for (int i = (int)(0); i < (int)(N); ++i) cin >> A[i];
    Solution();
  }
  return 0;
}
