#include <bits/stdc++.h>
using namespace std ;

#define Boost ios_base :: sync_with_stdio (0) ; cin.tie(0) ; cout.tie(0) ;

#define  int  long long
#define  ld   long double

#define  pb   push_back
#define  pf   push_front

#define  mp   make_pair
#define  F    first
#define  S    second

#define  deb(x)        cout << #x << x << endl ;
#define  debb(x,y)     cout << #x << x << #y << y << endl ;
#define  debbb(x,y,z)  cout << #x << x << #y <<  y << #z << z << endl ;

#define  all(v)        v.begin(),v.end()
#define  sortall(v)    sort(all(v))

#define  fs(x)         fixed << setprecision(x)

#define  setbits(x)    __builtin_popcount(x)
#define  zrbits(x)     __builtin_ctzll(x)

const int     plus   =  INT32_MAX               ;
const int     minus  =  INT32_MIN               ;
const int     pplus  =  INT64_MAX               ;
const int     mminus =  INT64_MIN               ;
const double  pi     =  3.141592653589793238    ;
const int     mod    =  100000007               ;  //1e9+7

void Go () {
    int n = 0 ;
    cin >> n ;
    map <int,int> m ;
    int dif = 0 ;

    for ( int i = 0 ; i < n ; i++ ) {
        int x = 0 ; cin >> x ;
        m[x]++ ;
    }

    if ( m.size() == 1 ) {
        cout << m.begin()->second << "\n" ;
        return ;
    }
    
    int mp = n/2 ;
    for ( auto i : m ) {
        if ( i.second > mp ) {
            dif += (i.second-mp) ;
        }
    }

    if ( n % 2 ) {
        if ( m.size() > n/2 ) {
            cout << "1\n" ;
        }
        else {
            dif = (2*dif)-1 ;
            cout << max((int)1,dif) << "\n" ;
        }
    }
    else {
        cout << 2*dif << "\n" ;
    }
}


int32_t main () {
    Boost 

    int t = 1 ;
    cin >> t ;
    while ( t-- ) {
        Go() ;
    }
   return 0 ;
}