import java.util.*;
public class Main {
public static void main
(String[] args
) { Scanner sc
= new Scanner
(System.
in); int t = sc.nextInt();
while (t-- > 0) {
int m = sc.nextInt();
int n = sc.nextInt();
int[] b = new int[n + 15];
int[] k1 = new int[n + 15], k5 = new int[n + 15];
long[] sum_k1 = new long[n + 15], sum_k5 = new long[n + 15];
long[] sumr_k1 = new long[n + 15], sumr_k5 = new long[n + 15];
int p1 = 0, p2 = 0;
for (int i = 1; i <= n; i++) {
b[i] = sc.nextInt();
if (b[i] == 1 || b[i] == 3) {
p1++;
k1[i] = i;
}
if (b[i] == 2 || b[i] == 3) {
p2++;
k5[i] = i;
}
}
for (int i = 1; i <= n; i++) {
sum_k1[i] = k1[i] + sum_k1[i - 1];
sum_k5[i] = k5[i] + sum_k5[i - 1];
}
for (int i = n; i >= 1; i--) {
sumr_k1[i] = k1[i] + sumr_k1[i + 1];
sumr_k5[i] = k5[i] + sumr_k5[i + 1];
}
int c1 = 0, c2 = 0;
for (int i = 1; i <= n; i++) {
if (k1[i] > 0) {
c1++;
}
long d1 = (long) i * c1 - sum_k1[i];
long d2 = sumr_k1[i] - (long) i * p1;
long r1 = d1 + d2;
if (k1[i] > 0) {
p1--;
}
if (k5[i] > 0) {
c2++;
}
long d5 = (long) i * c2 - sum_k5[i];
long d6 = sumr_k5[i] - (long) i * p2;
long r5 = d5 + d6;
if (k5[i] > 0) {
p2--;
}
}
}
sc.close();
}
}
aW1wb3J0IGphdmEudXRpbC4qOwoKcHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIFNjYW5uZXIgc2MgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgICAgIGludCB0ID0gc2MubmV4dEludCgpOwoKICAgICAgICB3aGlsZSAodC0tID4gMCkgewogICAgICAgICAgICBpbnQgbSA9IHNjLm5leHRJbnQoKTsKICAgICAgICAgICAgaW50IG4gPSBzYy5uZXh0SW50KCk7CgogICAgICAgICAgICBpbnRbXSBiID0gbmV3IGludFtuICsgMTVdOwogICAgICAgICAgICBpbnRbXSBrMSA9IG5ldyBpbnRbbiArIDE1XSwgazUgPSBuZXcgaW50W24gKyAxNV07CiAgICAgICAgICAgIGxvbmdbXSBzdW1fazEgPSBuZXcgbG9uZ1tuICsgMTVdLCBzdW1fazUgPSBuZXcgbG9uZ1tuICsgMTVdOwogICAgICAgICAgICBsb25nW10gc3Vtcl9rMSA9IG5ldyBsb25nW24gKyAxNV0sIHN1bXJfazUgPSBuZXcgbG9uZ1tuICsgMTVdOwoKICAgICAgICAgICAgaW50IHAxID0gMCwgcDIgPSAwOwoKICAgICAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAgICAgICAgICAgICBiW2ldID0gc2MubmV4dEludCgpOwogICAgICAgICAgICAgICAgaWYgKGJbaV0gPT0gMSB8fCBiW2ldID09IDMpIHsKICAgICAgICAgICAgICAgICAgICBwMSsrOwogICAgICAgICAgICAgICAgICAgIGsxW2ldID0gaTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChiW2ldID09IDIgfHwgYltpXSA9PSAzKSB7CiAgICAgICAgICAgICAgICAgICAgcDIrKzsKICAgICAgICAgICAgICAgICAgICBrNVtpXSA9IGk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewogICAgICAgICAgICAgICAgc3VtX2sxW2ldID0gazFbaV0gKyBzdW1fazFbaSAtIDFdOwogICAgICAgICAgICAgICAgc3VtX2s1W2ldID0gazVbaV0gKyBzdW1fazVbaSAtIDFdOwogICAgICAgICAgICB9CgogICAgICAgICAgICBmb3IgKGludCBpID0gbjsgaSA+PSAxOyBpLS0pIHsKICAgICAgICAgICAgICAgIHN1bXJfazFbaV0gPSBrMVtpXSArIHN1bXJfazFbaSArIDFdOwogICAgICAgICAgICAgICAgc3Vtcl9rNVtpXSA9IGs1W2ldICsgc3Vtcl9rNVtpICsgMV07CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGludCBjMSA9IDAsIGMyID0gMDsKCiAgICAgICAgICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykgewogICAgICAgICAgICAgICAgaWYgKGsxW2ldID4gMCkgewogICAgICAgICAgICAgICAgICAgIGMxKys7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgbG9uZyBkMSA9IChsb25nKSBpICogYzEgLSBzdW1fazFbaV07CiAgICAgICAgICAgICAgICBsb25nIGQyID0gc3Vtcl9rMVtpXSAtIChsb25nKSBpICogcDE7CiAgICAgICAgICAgICAgICBsb25nIHIxID0gZDEgKyBkMjsKCiAgICAgICAgICAgICAgICBpZiAoazFbaV0gPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgcDEtLTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAoazVbaV0gPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgYzIrKzsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBsb25nIGQ1ID0gKGxvbmcpIGkgKiBjMiAtIHN1bV9rNVtpXTsKICAgICAgICAgICAgICAgIGxvbmcgZDYgPSBzdW1yX2s1W2ldIC0gKGxvbmcpIGkgKiBwMjsKICAgICAgICAgICAgICAgIGxvbmcgcjUgPSBkNSArIGQ2OwoKICAgICAgICAgICAgICAgIGlmIChrNVtpXSA+IDApIHsKICAgICAgICAgICAgICAgICAgICBwMi0tOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoTWF0aC5hYnMocjEgLSByNSkgKyAiICIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigpOwogICAgICAgIH0KCiAgICAgICAgc2MuY2xvc2UoKTsKICAgIH0KfQo=