t = int(input())
for i in range(t):
e = input().split(" ")
currrent = int(e[0])
currrent = bin(currrent)
currrent = currrent[2:]
count = 0
last = currrent
while(True):
if(len(currrent)!= 16):
currrent = "0" + currrent
else:
break
if(e[2] == "L"):
last = currrent[:int(e[1])]
currrent = currrent + last
currrent = currrent[int(e[1]):]
else:
last = currrent[16 - int(e[1]) : ]
currrent = last + currrent
currrent = currrent[:16]
for j in range(len(currrent)):
count += int(currrent[len(currrent) - 1 - j]) * (2**j)
print(count)
1622A - Construct a Rectangle | 1620A - Equal or Not Equal |
1517A - Sum of 2050 | 620A - Professor GukiZ's Robot |
1342A - Road To Zero | 1520A - Do Not Be Distracted |
352A - Jeff and Digits | 1327A - Sum of Odd Integers |
1276A - As Simple as One and Two | 812C - Sagheer and Nubian Market |
272A - Dima and Friends | 1352C - K-th Not Divisible by n |
545C - Woodcutters | 1528B - Kavi on Pairing Duty |
339B - Xenia and Ringroad | 189A - Cut Ribbon |
1182A - Filling Shapes | 82A - Double Cola |
45A - Codecraft III | 1242A - Tile Painting |
1663E - Are You Safe | 1663D - Is it rated - 3 |
1311A - Add Odd or Subtract Even | 977F - Consecutive Subsequence |
939A - Love Triangle | 755A - PolandBall and Hypothesis |
760B - Frodo and pillows | 1006A - Adjacent Replacements |
1195C - Basketball Exercise | 1206A - Choose Two Numbers |