회사

아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

빠르게 성장하는 어느 회사는 늘 새 직원을 채용합니다. 새로 들어온 직원 pp에게는 직속 상사가 정확히 한 명 배정되며, 그 상사의 상사들(직접이든 간접이든)도 모두 자동으로 pp의 간접 상사가 됩니다.

pp의 직속 상사를 차수(degree) 00의 상사라고 부릅니다. 차수 00인 상사의 상사는 차수 11의 상사이고, 일반적으로 차수 kk인 상사의 상사는 차수 k+1k+1의 상사입니다. 따라서 모든 직원은 자신의 직속 상사와, 그 위에 있는 모든 상위 차수 상사의 부하 직원이 됩니다. 이렇게 해서 창업자를 맨 위에 둔, 전체 직원의 하나의 계층 구조가 만들어집니다.

회사는 설립 이후 입사한 모든 직원의 기록을 보관합니다. 때때로 어떤 직원은 주어진 차수 kk에 대해, 자신을 정확히 차수 kk의 상사로 두는 현재 직원이 몇 명인지 알고 싶어 합니다. 이 질문에 답하는 프로그램을 작성하세요.

입력

첫째 줄에 사건의 개수를 나타내는 정수 nn (1n1051 \le n \le 10^5)이 주어집니다. 이어지는 nn개의 줄에는 각 사건이 시간 순서대로 한 줄에 하나씩 주어집니다.

채용 사건은 문자 Z와 두 정수 pp, ss (2p1052 \le p \le 10^5이고, 모든 채용에서 pp 값은 서로 다름)로 표현됩니다. pp는 새 직원의 번호, ss는 직속 상사의 번호이며, ss는 항상 이미 재직 중인 직원의 번호입니다. 창업자의 번호는 11입니다.

질문 사건은 문자 P와 두 정수 qq, kk (1q1051 \le q \le 10^5, 0k1050 \le k \le 10^5)로 표현됩니다. 직원 qq가, 자신을 정확히 차수 kk의 상사로 두는 현재 직원이 몇 명인지 묻는 것입니다.

첫 사건이 일어나기 전에는 창업자 혼자만 회사에 있습니다.

출력

각 질문 사건마다, qq를 정확히 차수 kk의 상사로 두는 현재 직원 수를 정수 하나로 한 줄에 출력합니다.

힌트