rt
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<map>
#include<vector>
#define ll long long
#define IOS ios::sync_with_stdio(false)
#define TIE cin.tie(0),cout.tie(0)
using namespace std;
map<unsigned short,map<unsigned short,bool>>vfriend;
bool qwq[50005];
int n,m,p;
void O(int u){
qwq[u]=true;
}
void F(int u){
qwq[u]=false;
}
void A(int u,int v){
vfriend[u][v]=1;
vfriend[v][u]=1;
}
void D(int u,int v){
vfriend[u][v]=0;
vfriend[v][u]=0;
}
void C(int u){
int cnt=0;
for(int i=1;i<=n;i++){
if(i==u)
continue;
if(vfriend[u][i]==1&&qwq[i]){
cnt++;
}
}
cout<<cnt<<endl;
}
int main(){
cin>>n>>m>>p;
int o;cin>>o;
for(int i=1;i<=o;i++){
int t;cin>>t;
qwq[t]=true;
}
for(int i=1;i<=m;i++){
int t,w;cin>>t>>w;
vfriend[t][w]=1;
vfriend[w][t]=1;
}
for(int i=1;i<=p;i++){
char a;int b,c;
cin>>a>>b;
if(a=='A'||a=='D')
cin>>c;
if(a=='O'){
O(b);
}else if(a=='F'){
F(b);
}else if(a=='A'){
A(b,c);
}else if(a=='D'){
D(b,c);
}else if(a=='C'){
C(b);
}
}
return 0;
}