#include <bits/stdc++.h>
using namespace std;
int a[200005],vis[200005],c[200005],d[200005];
int main(){
int t;cin>>t;
while(t--){
int n,q,cnt=0;cin>>n>>q;
for(int i=1;i<=n;i++) cin>>a[i],vis[min(a[i],i)+1]++,vis[max(a[i],i)+1]--;
for(int i=1;i<=n;i++) vis[i]+=vis[i-1];
string s;cin>>s,s=' '+s;
for(int i=1;i<=n;i++) if(s[i]=='L') c[i]=1;
for(int i=1;i<=n;i++){
d[i]=c[i]-c[i-1];
if(d[i]==-1&&vis[i]) cnt++;
}
while(q--){
int x;cin>>x;
if(c[x]){
d[x]--,d[x+1]++;
if(d[x]==-1&&vis[x]) cnt++;
if(!d[x+1]&&vis[x+1]) cnt--;
}else{
d[x]++,d[x+1]--;
if(!d[x]&&vis[x]) cnt--;
if(d[x+1]==-1&&vis[x+1]) cnt++;
}
cout<<(cnt?"No\n":"Yes\n");
}
for(int i=1;i<=n+1;i++) vis[i]=c[i]=d[i]=0;
}
}