# Tree String
## Đề Bài
Cho cây gồm $n$ đỉnh có gốc tại đỉnh $1$, đỉnh thứ $i$ chứa kí tự $c_i$ (nằm trong bảng chữ cái alphabet viết thường).
Gọi $t(u,v)$ là xâu được tạo thành bằng các kí tự trên các đỉnh trong đường đi đơn từ đỉnh $u$ tới đỉnh $v$.
Ta có $q$ truy vấn, truy vấn thứ $i$ có dạng như sau:
- Cho đỉnh $u_i$ và xâu $s_i$, hãy đếm xem có bao nhiêu $t(u_i,v) = s_i$, sao cho $v$ thuộc cây con của đỉnh $u$.
#### Giới hạn
- $1 \le n,q \le 2 \times 10^5$.
- Tổng các $|s_i|$ trong các truy vấn không quá $5 \times 10^5$.
## Editorial
Ta sẽ xử lí truy vấn offline.
Với mỗi đỉnh $u$, ta sẽ lưu một Trie gồm các xâu $t(u,v)$ với $v$ nằm trong cây con của $u$.
Ta có thể nhận xét rằng, số node của cây Trie của đỉnh $u$ sẽ bé hơn hoặc bằng độ lớn của cây con gốc $u$.
Từ đó, ta có thể dùng kĩ thuật Small To Large để gộp các Trie lại với nhau. Việc gộp này ta sẽ dùng $DFS$ trên Trie có số node bé hơn để add dần vào Trie còn lại.