def f(s): return int(s)-1 Z=10**9+7 N,M=map(int,input().split()) S=input() X={("P","D"),("D","C"),("C","A")} H={v:[] for v in range(N)} for i in range(M): u,v=map(f,input().split()) if (S[u],S[v]) in X: H[u].append(v) elif (S[v],S[u]) in X: H[v].append(u) K=0 for i in range(N): if S[i]=="P": for j in H[i]: for k in H[j]: K=(K+len(H[k]))%Z print(K)