import java.util.*;
import java.lang.*;
import java.io.*;
class Solution {
public static void main
(String [] args
){ Scanner sc
= new Scanner
(System.
in); long t = sc.nextLong();
while (t-- > 0) {
long m = sc.nextLong();
int n = sc.nextInt();
boolean[] isInGroup1 = new boolean[n + 1];
boolean[] isInGroup2 = new boolean[n + 1];
long totalSum1 = 0, totalCount1 = 0;
long totalSum2 = 0, totalCount2 = 0;
for (int i = 1; i <= n; i++) {
int b = sc.nextInt();
if (b == 1 || b == 3) {
isInGroup1[i] = true;
totalCount1++;
totalSum1 += i;
}
if (b == 2 || b == 3) {
isInGroup2[i] = true;
totalCount2++;
totalSum2 += i;
}
}
long countLeft1 = 0, countRight1 = totalCount1;
long countLeft2 = 0, countRight2 = totalCount2;
long r1 = totalSum1 - totalCount1;
long r2 = totalSum2 - totalCount2;
for (int i = 2; i <= n; i++) {
if (isInGroup1[i - 1]) {
countLeft1++;
countRight1--;
}
if (isInGroup2[i - 1]) {
countLeft2++;
countRight2--;
}
r1 = r1 + countLeft1 - countRight1;
r2 = r2 + countLeft2 - countRight2;
}
}
sc.close();
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBTb2x1dGlvbiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmcgW10gYXJncyl7CiAgICAgICAgU2Nhbm5lciBzYyA9IG5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgbG9uZyB0ID0gc2MubmV4dExvbmcoKTsgCgogICAgICAgIHdoaWxlICh0LS0gPiAwKSB7CiAgICAgICAgICAgIGxvbmcgbSA9IHNjLm5leHRMb25nKCk7CiAgICAgICAgICAgIGludCBuID0gc2MubmV4dEludCgpOwoKICAgICAgICAgICAgYm9vbGVhbltdIGlzSW5Hcm91cDEgPSBuZXcgYm9vbGVhbltuICsgMV07CiAgICAgICAgICAgIGJvb2xlYW5bXSBpc0luR3JvdXAyID0gbmV3IGJvb2xlYW5bbiArIDFdOwoKICAgICAgICAgICAgbG9uZyB0b3RhbFN1bTEgPSAwLCB0b3RhbENvdW50MSA9IDA7CiAgICAgICAgICAgIGxvbmcgdG90YWxTdW0yID0gMCwgdG90YWxDb3VudDIgPSAwOwoKICAgICAgICAgICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbjsgaSsrKSB7CiAgICAgICAgICAgICAgICBpbnQgYiA9IHNjLm5leHRJbnQoKTsKICAgICAgICAgICAgICAgIGlmIChiID09IDEgfHwgYiA9PSAzKSB7CiAgICAgICAgICAgICAgICAgICAgaXNJbkdyb3VwMVtpXSA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgdG90YWxDb3VudDErKzsKICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bTEgKz0gaTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChiID09IDIgfHwgYiA9PSAzKSB7CiAgICAgICAgICAgICAgICAgICAgaXNJbkdyb3VwMltpXSA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgdG90YWxDb3VudDIrKzsKICAgICAgICAgICAgICAgICAgICB0b3RhbFN1bTIgKz0gaTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgbG9uZyBjb3VudExlZnQxID0gMCwgY291bnRSaWdodDEgPSB0b3RhbENvdW50MTsKICAgICAgICAgICAgbG9uZyBjb3VudExlZnQyID0gMCwgY291bnRSaWdodDIgPSB0b3RhbENvdW50MjsKCiAgICAgICAgICAgIGxvbmcgcjEgPSB0b3RhbFN1bTEgLSB0b3RhbENvdW50MTsKICAgICAgICAgICAgbG9uZyByMiA9IHRvdGFsU3VtMiAtIHRvdGFsQ291bnQyOwoKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludChNYXRoLmFicyhyMSAtIHIyKSk7CgogICAgICAgICAgICBmb3IgKGludCBpID0gMjsgaSA8PSBuOyBpKyspIHsKICAgICAgICAgICAgICAgIGlmIChpc0luR3JvdXAxW2kgLSAxXSkgewogICAgICAgICAgICAgICAgICAgIGNvdW50TGVmdDErKzsKICAgICAgICAgICAgICAgICAgICBjb3VudFJpZ2h0MS0tOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGlzSW5Hcm91cDJbaSAtIDFdKSB7CiAgICAgICAgICAgICAgICAgICAgY291bnRMZWZ0MisrOwogICAgICAgICAgICAgICAgICAgIGNvdW50UmlnaHQyLS07CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgcjEgPSByMSArIGNvdW50TGVmdDEgLSBjb3VudFJpZ2h0MTsKICAgICAgICAgICAgICAgIHIyID0gcjIgKyBjb3VudExlZnQyIC0gY291bnRSaWdodDI7CiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50KCIgIiArIE1hdGguYWJzKHIxIC0gcjIpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oKTsKICAgICAgICB9CiAgICAgICAgc2MuY2xvc2UoKTsKICAgIH0KfQo=