Contests | Virtual Contests | Problems | Submit | Runs Status | Rank List | Forum |

Time Limit: 1.0 Seconds Memory Limit: 65536K

Total Runs: 1229 Accepted Runs: 343

John are playing with blocks. There are *N* blocks (1 ≤ *N* ≤ 30000) numbered 0..*N*-1. Initially, there are *N* piles, and each pile contains one block. Then John do some operations *P* times (1 ≤ *P* ≤ 1000000). There are two kinds of operation:### Input

The first line contains integer *P*. Then *P* lines follow, each of which contain an operation describe above.### Output

Output the count for each C operations in one line.### Sample Input

### Sample Output

M *X Y* : Put the whole pile containing block *X* up to the pile containing *Y*. If *X* and *Y* are in the same pile, just ignore this command.

C *X* : Count the number of blocks under block *X*

You are request to find out the output for each C operation.

6 M 1 6 C 1 M 2 4 M 2 6 C 3 C 4

1 0 2

**Author:**SUN, Chao

Maintance:Fxz. Developer: SuperHacker, G.D.Retop, Fxz