package main
import (
"bufio"
"fmt"
"os"
)
func main() {
in := bufio.NewReader(os.Stdin)
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
var t int
if _, err := fmt.Fscan(in, &t); err != nil {
return
}
for i := 0; i < t; i++ {
var n int
fmt.Fscan(in, &n)
ans := 0
cur := 0
seen := make(map[int]struct{})
seen[0] = struct{}{}
for j := 0; j < n; j++ {
var a int
fmt.Fscan(in, &a)
cur ^= a
if _, ok := seen[cur]; ok {
ans++
seen = make(map[int]struct{})
seen[0] = struct{}{}
cur = 0
} else {
seen[cur] = struct{}{}
}
}
fmt.Fprintln(out, n-ans)
}
}