#include #include #include #include using namespace std; long t,x,y,n,m,i,j,l[100000]; bool nr[100000][27]; vector v[100000]; char s[100005],c; void update(long nod,long ant) { nr[nod][s[nod]-'a']=1-nr[nod][s[nod]-'a']; for (int i=0;i>n>>m; cin>>s; for (i=1;i<=n;i++) { cin>>x>>y; l[x]++; v[x].push_back(y); l[y]++; v[y].push_back(x); } update(1,0); long num; for (i=1;i<=m;i++) { cin>>t; if (t==1) { cin>>x>>y; num=0; for (j=0;j<=26;j++) { if ((nr[x][j]+nr[y][j]+nr[1][j])%2==0) num++; } cout<>c; for (j=0;j<=26;j++) { n++; nr[n][j]=nr[x][j]; } nr[n][c-'a']=1-nr[n][c-'a']; } } return 0; }