#include<bits/stdc++.h>
using namespace std;
int top=-1;
char s[101];
void push(char c)
{
s[++top]=c;
}
char pop()
{
return s[top--];
}
main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n,m;
scanf("%d %d",&n,&m);
char str[50][101];
for(int i=0;i<n;i++)
scanf("%s",&str[i]);
char str_n[1000];char arr[101];
strcpy(str_n,str[0]);
for(int i=1;i<n;i++)
{ strcpy(arr,str_n);
for(int j=0;j<strlen(str_n);j++)
push(str_n[j]);
for(int j=0;j<strlen(str_n);j++)
str_n[j]=pop();
strcpy(str_n,strcat(arr,strcat(str_n,str[i])));
}
while(m--)
{
int y;
scanf("%d",&y);
printf("%c",str_n[y]);
}
printf("\n");
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IHRvcD0tMTsKY2hhciBzWzEwMV07CnZvaWQgcHVzaChjaGFyIGMpCnsKIHNbKyt0b3BdPWM7Cn0KY2hhciBwb3AoKQp7CglyZXR1cm4gc1t0b3AtLV07Cn0KbWFpbigpCnsKCWludCB0OwoJc2NhbmYoIiVkIiwmdCk7Cgl3aGlsZSh0LS0pCgl7CgkJaW50IG4sbTsKCQlzY2FuZigiJWQgJWQiLCZuLCZtKTsKCQljaGFyIHN0cls1MF1bMTAxXTsKCQlmb3IoaW50IGk9MDtpPG47aSsrKQoJCXNjYW5mKCIlcyIsJnN0cltpXSk7CgkJY2hhciBzdHJfblsxMDAwXTtjaGFyIGFyclsxMDFdOwoJCXN0cmNweShzdHJfbixzdHJbMF0pOwoJCWZvcihpbnQgaT0xO2k8bjtpKyspCgkJeyAgc3RyY3B5KGFycixzdHJfbik7CgkJCWZvcihpbnQgaj0wO2o8c3RybGVuKHN0cl9uKTtqKyspCgkJCXB1c2goc3RyX25bal0pOwoJCQlmb3IoaW50IGo9MDtqPHN0cmxlbihzdHJfbik7aisrKQoJCQlzdHJfbltqXT1wb3AoKTsKCQkJc3RyY3B5KHN0cl9uLHN0cmNhdChhcnIsc3RyY2F0KHN0cl9uLHN0cltpXSkpKTsKCgkJfQoJCXdoaWxlKG0tLSkKCQl7CgkJCWludCB5OwoJCQlzY2FuZigiJWQiLCZ5KTsKCQkJcHJpbnRmKCIlYyIsc3RyX25beV0pOwoJCX0KCQlwcmludGYoIlxuIik7Cgl9Cn0K