#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e5 + 5;
inline bool P(register string x,register string y){
if (x == y) return 1;
for (register int i = 0;i < x.length();i++){
if (y.find(x[i]) == -1) return 0;
else x[i] = ' ';
}
return 1;
}
int main(){
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
register int n,q;
register string s[MAXN];
cin >> n >> q;
for (register int i = 1;i <= n;i++) cin >> s[i];
while (q--){
register int op,x,y;
cin >> op >> x >> y;
if (op == 1) s[y] += s[x];
else cout << (P(s[x],s[y]) ? "Yes" : "No") << '\n';
}
return 0;
}