Chef likes trees a lot. Today he has an infinte full binary tree (each node has exactly two childs) with special properties.
Chef's tree has the following special properties :

Each node of the tree is either colored red or black.
Root of the tree is black intially.
Both childs of a red colored node are black and both childs of a black colored node are red.


The root of the tree is labelled as 1. For a node labelled v, it's left child is labelled as 2*v and it's right child is labelled as 2*v+1.


Chef wants to fulfill Q queries on this tree. Each query belongs to any of the following three types:


Qi 	   Change color of all red colored nodes to black and all black colored nodes to red.
Qb x y  Count the number of black colored nodes on the path from node x to node y (both inclusive).
Qr x y  Count the number of red colored nodes on the path from node x to node y (both inclusive).

Help chef accomplishing this task.

Input
First line of the input contains an integer Q denoting the number of queries. Next Q lines of the input contain Q queries (one per line). Each query belongs to one of the three types mentioned above.

Output
For each query of type Qb or Qr, print the required answer.

Constraints


1<=Q<=10^5


1<=x,y<=10^9



Sample Input
5
Qb 4 5
Qr 4 5
Qi
Qb 4 5
Qr 4 5

Sample Output
2
1
1
2

Explanation
With the initial configuration of the tree, Path from node 4 to node 5 is 4->2->5 and color of nodes on the path is B->R->B.  

Number of black nodes are 2.
Number of red nodes are 1. 

After Query Qi, New configuration of the path from node 4 to node 5 is R->B->R.

Number of black nodes are 1.
Number of red nodes are 2. 


Scoring

 Subtask #1: 1<=Q<=100  1<=x,y<=1000   	         	                        : 27 pts
 Subtask #2: 1<=Q<=10^3  1<=x,y<=10^5       :  25 pts

 Subtask #3: 1<=Q<=10^5  1<=x,y<=10^9       :  48 pts
from math import log
def lca(a,b):
    while a!=b:
        if a<b:
            a,b = b,a
        a>>=1
    return a
test = input()
root = 0
while test:
    test-=1
    st = raw_input().split()
    red ,black = 0 ,0
    if st[0]=='Qi':
        if root==0:
            root = 1
        else:
            root = 0
    else:
        x = 1 + int(log(int(st[1]),2))
        y = 1 + int(log(int(st[2]),2))
        c = 1 + int(log(lca(int(st[1]),int(st[2])),2))
        #print 'x=',x
        #print 'y=',y
        #print 'lca=',c
        for i in range(c,x+1):
            if i&1:
                black = -~black
            else:
                red = -~red
        for j in range(c+1,y+1):
            if j&1:
                black = -~black
            else:
                red = -~red
        if st[0]=='Qr':
            if root&1:
                print black
            else:
                print red
        if st[0]=='Qb':
            if root&1:
                print red
            else:
                print black