#include <stdio.h>

int main() {
    int t, o, p;
    unsigned int x;
    scanf("%d\n", &t);
    while (t--) {
        scanf("%d %u %d\n", &o, &x, &p);
        switch (o) {
            case 1:
                printf("%u\n", (x << p) & 0x0FFF);
                break;
            case 2:
                printf("%u\n", (x >> p) | ((0xFFF << (12 - p)) & 0x0FFF)); // TODO
                break;
            case 3:
                printf("%u\n", x & ~(1 << p));
                break;
            case 4:
                printf("%u\n", x | (1 << p));
                break;
        }
    }
    return 0;
}