#include #include using namespace std; //ifstream cin("tree.in"); //ofstream cout("tree.out"); int t[300000],l[300000],parc[300000]; char c[300000]; vector a[300000]; char s; int n,m,y,x; void parcu(int x,int v){ parc[x]=1; l[x]=v; for(int i=0;i>n>>m; for(int i=1;i<=n;i++)cin>>c[i]; for(int i=1;i>x>>y,a[x].push_back(y),a[y].push_back(x); parcu(1,0); for(int i=1;i<=m;i++){ cin>>x; if(x==1){ cin>>x>>y; int li[40]={0}; while(x!=y){ if(l[x]>l[y]) { li[c[x]-'a']++;//cout<<"x-"<>t[++n];cin>>c[n]; //cout<