#include <bits/stdc++.h>
using namespace std;
//-(smallstar))---- :]
#define int long long
#define ll long long
#define mp make_pair
#define vi vector<ll>
#define pb push_back
#define all(o) (o).begin(), (o).end()
#define rall(o) (o).rbegin(), (o).rend()
#define nl cout << "\n"
//debug start
#define debug(a)          \
    cerr << #a << ": ";   \
    for (auto i : a)      \
        cerr << i << " "; \
    cerr << '\n';
#define debugvi(a)                           \
    for (int idx = 0; idx < a.size(); idx++) \
    {                                        \
        cerr << #a << "[" << idx << "]: ";   \
        for (auto i : a[idx])                \
            cerr << i << " ";                \
        cerr << ' ';                         \
        cerr << '\n';                        \
    }
#define debugpp(a)                                         \
    cerr << #a << ": ";                                    \
    for (auto i : a)                                       \
        cerr << "(" << i.first << "," << i.second << ") "; \
    cerr << '\n';

#define trace(...) __f(#__VA_ARGS__, __VA_ARGS__)
template <typename Arg1>
void __f(const char *name, Arg1 &&arg1)
{
    cerr << name << " : " << arg1 << endl;
}
template <typename Arg1, typename... Args>
void __f(const char *names, Arg1 &&arg1, Args &&...args)
{
    const char *comma = strchr(names + 1, ',');
    cerr.write(names, comma - names) << " : " << arg1 << " | ";
    __f(comma + 1, args...);
}
//debug end
template <class T>
istream &operator>>(istream &is, vector<T> &V)
{
    for (auto &e : V)
        is >> e;
    return is;
}

const ll MOD = 1000000007;
const ll inf = LONG_LONG_MAX;
const ll ninf = LONG_LONG_MIN;

long long binpow(long long a, long long b)
{

    long long res = 1;
    while (b > 0)
    {
        if (b & 1)
            res = res * a % MOD;
        a = a * a % MOD;
        b >>= 1;
    }
    return res;
}

void europa_enceladus_titan()
{
    int n;
    cin >> n;
    vector<int> a, b;
    while (n--)
    {
        int x;
        cin >> x;
        if (x % 2 == 0)
        {
            a.push_back(x);
        }
        else
        {
            b.push_back(x);
        }
    }
    for (int i = 0; i < a.size(); i++)
    {
        cout << a[i] << " ";
    }
    for (int i = 0; i < b.size(); i++)
    {
        cout << b[i] << " ";
    }
    nl;
}

signed main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    int t;
    t = 1;
    cin >> t;
    for (int i = 0; i < t; i++)
    {
        europa_enceladus_titan();
    }
}