Eseguire spostamenti a livello di bit

Ti viene fornito un intero n (in base 10) e una stringa left o right che indica la direzione dello spostamento a livello di bit. Inoltre, ricevi anche un intero k che specifica il numero di posizioni di cui n deve essere spostato.

Scrivi un programma che stampi il risultato dopo aver eseguito l’operazione di spostamento a livello di bit.

Input

La prima riga contiene un singolo intero n (0 ≤ n ≤ ).

La seconda riga contiene una stringa, left o right, che indica la direzione dello spostamento.

La terza riga contiene un singolo intero k (0 ≤ k ≤ 16).

Output

Il numero n dopo aver eseguito l’operazione di spostamento a livello di bit.

Examples

Input

Output

3 left 2

12

5 right 1

2

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue