#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <algorithm>
int A[15], M, N, T, t = 1;
long long dp[15][15], res = 0;
int main(){
scanf("%d", &T);
while(T--){
scanf("%d %d", &M, &N);
for(int i=1; i<=M; ++i) scanf("%d", &A[i]);
memset(dp, 0, sizeof(dp));
for(int i=1; i<=M; ++i) dp[1][A[i]] = 1;
for(int i=2; i<=N; ++i)
for(int j=1; j<=M; ++j)
for(int k=1; k<=M; ++k) if(abs(A[j] - A[k]) <= 2) dp[i][A[j]] += dp[i - 1][A[k]];
for(int i=1; i<=9; ++i) res += dp[N][i];
printf("Case %d: %lld\n", t++, res);
res = 0;
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKaW50IEFbMTVdLCBNLCBOLCBULCB0ID0gMTsKbG9uZyBsb25nIGRwWzE1XVsxNV0sIHJlcyA9IDA7CgppbnQgbWFpbigpewogIHNjYW5mKCIlZCIsICZUKTsKICB3aGlsZShULS0pewogICAgc2NhbmYoIiVkICVkIiwgJk0sICZOKTsKICAgIGZvcihpbnQgaT0xOyBpPD1NOyArK2kpIHNjYW5mKCIlZCIsICZBW2ldKTsKICAgIG1lbXNldChkcCwgMCwgc2l6ZW9mKGRwKSk7CiAgICBmb3IoaW50IGk9MTsgaTw9TTsgKytpKSBkcFsxXVtBW2ldXSA9IDE7CiAgICBmb3IoaW50IGk9MjsgaTw9TjsgKytpKQogICAgICBmb3IoaW50IGo9MTsgajw9TTsgKytqKQogICAgICAgIGZvcihpbnQgaz0xOyBrPD1NOyArK2spIGlmKGFicyhBW2pdIC0gQVtrXSkgPD0gMikgZHBbaV1bQVtqXV0gKz0gZHBbaSAtIDFdW0Fba11dOwogICAgZm9yKGludCBpPTE7IGk8PTk7ICsraSkgcmVzICs9IGRwW05dW2ldOwogICAgcHJpbnRmKCJDYXNlICVkOiAlbGxkXG4iLCB0KyssIHJlcyk7CiAgICByZXMgPSAwOwogIH0KICByZXR1cm4gMDsKfQ==