#include #include #include #include using namespace std; int main() { int n, l, q; cin >> n >> l >> q; vector s(n); vector>> bs(l, vector> (26)); for (int i = 0; i < n; ++i) cin >> s[i]; for (int i = 0; i < n; ++i) for (int j = 0; j < l; ++j) bs[j][s[i][j] - 'a'][i] = 1; while (q--) { int t; cin >> t; if (t == 1) { int k; char c, d; cin >> k >> c >> d; --k; bs[k][d - 'a'] |= bs[k][c - 'a']; bs[k][c - 'a'].reset(); } else { string st; cin >> st; bitset<1000> ans; ans.flip(); for (int i = 0; i < st.size(); ++i) ans &= bs[i][st[i] - 'a']; cout << ans.count() << endl; } } }