#include <cstdio>
#include <cstring>
#include <cctype>
#include <string>
#include <climits>
using namespace std;
int main()
{
int t;
scanf("%d\n", &t);
size_t bytesLength;
char bytesString[3];
int bytes;
size_t characterLength;
char character[9];
bool isUnsigned;
size_t numberLength;
char numberString[64];
bool isNegative;
unsigned long long int number;
char c;
while(t--) {
bytesLength = characterLength = numberLength = 0;
while(scanf("%c", &bytesString[bytesLength]) && isdigit(bytesString[bytesLength++]));
while(scanf("%c", &character[characterLength]) && isalpha(character[characterLength++]));
while(scanf("%c", &numberString[numberLength]) && numberString[numberLength++] != '\n');
isUnsigned = (character[0] == 'U' ? true : false);
isNegative = (numberString[0] == '-' ? true : false);
number = stoull(numberString + (isNegative ? 1 : 0));
bytes = stoi(bytesString) - 1;
unsigned long long maximum;
if(isUnsigned) {
maximum = bytes < 63 ? (1ULL << (bytes + 1)) - 1ULL : ULLONG_MAX;
}
else {
maximum = (1ULL << bytes) - 1ULL;
}
unsigned long long minimum = (isUnsigned ? 0ULL : (1ULL << bytes));
if(!isUnsigned) {
putchar_unlocked('-');
}
printf("%llu %llu ", minimum, maximum);
if(isNegative && isUnsigned) {
printf("Ups");
}
else if(!isNegative && number > maximum) {
printf("Ups");
}
else if(isNegative && number > minimum) {
printf("Ups");
}
else {
if(isNegative) {
--number;
}
int i = 0;
while(number) {
numberString[i++] = ((number & 1) + '0');
number >>= 1;
}
if(isUnsigned) {
++bytes;
}
while(i < bytes) {
numberString[i++] = '0';
}
if(isUnsigned) {
--i;
}
else {
numberString[i] = (isNegative ? '1' : '0');
}
while(i >= 0) {
putchar_unlocked(numberString[i--]);
}
}
putchar_unlocked('\n');
}
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KI2luY2x1ZGUgPGNzdHJpbmc+CiNpbmNsdWRlIDxjY3R5cGU+CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDxjbGltaXRzPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkKewogICAgaW50IHQ7CiAgICBzY2FuZigiJWRcbiIsICZ0KTsKCiAgICBzaXplX3QgYnl0ZXNMZW5ndGg7CiAgICBjaGFyIGJ5dGVzU3RyaW5nWzNdOwogICAgaW50IGJ5dGVzOwoKICAgIHNpemVfdCBjaGFyYWN0ZXJMZW5ndGg7CiAgICBjaGFyIGNoYXJhY3Rlcls5XTsKICAgIGJvb2wgaXNVbnNpZ25lZDsKCiAgICBzaXplX3QgbnVtYmVyTGVuZ3RoOwogICAgY2hhciBudW1iZXJTdHJpbmdbNjRdOwogICAgYm9vbCBpc05lZ2F0aXZlOwogICAgdW5zaWduZWQgbG9uZyBsb25nIGludCBudW1iZXI7CiAgICBjaGFyIGM7CiAgICAKICAgIHdoaWxlKHQtLSkgewoKICAgICAgICBieXRlc0xlbmd0aCA9IGNoYXJhY3Rlckxlbmd0aCA9IG51bWJlckxlbmd0aCA9IDA7CiAgICAgICAgd2hpbGUoc2NhbmYoIiVjIiwgJmJ5dGVzU3RyaW5nW2J5dGVzTGVuZ3RoXSkgJiYgaXNkaWdpdChieXRlc1N0cmluZ1tieXRlc0xlbmd0aCsrXSkpOwogICAgICAgIHdoaWxlKHNjYW5mKCIlYyIsICZjaGFyYWN0ZXJbY2hhcmFjdGVyTGVuZ3RoXSkgJiYgaXNhbHBoYShjaGFyYWN0ZXJbY2hhcmFjdGVyTGVuZ3RoKytdKSk7CiAgICAgICAgd2hpbGUoc2NhbmYoIiVjIiwgJm51bWJlclN0cmluZ1tudW1iZXJMZW5ndGhdKSAmJiBudW1iZXJTdHJpbmdbbnVtYmVyTGVuZ3RoKytdICE9ICdcbicpOwoKICAgICAgICBpc1Vuc2lnbmVkID0gKGNoYXJhY3RlclswXSA9PSAnVScgPyB0cnVlIDogZmFsc2UpOwogICAgICAgIGlzTmVnYXRpdmUgPSAobnVtYmVyU3RyaW5nWzBdID09ICctJyA/IHRydWUgOiBmYWxzZSk7CiAgICAgICAgbnVtYmVyID0gc3RvdWxsKG51bWJlclN0cmluZyArIChpc05lZ2F0aXZlID8gMSA6IDApKTsKICAgICAgICBieXRlcyA9IHN0b2koYnl0ZXNTdHJpbmcpIC0gMTsKCiAgICAgICAgdW5zaWduZWQgbG9uZyBsb25nIG1heGltdW07CiAgICAgICAgaWYoaXNVbnNpZ25lZCkgewogICAgICAgICAgICBtYXhpbXVtID0gYnl0ZXMgPCA2MyA/ICgxVUxMIDw8IChieXRlcyArIDEpKSAtIDFVTEwgOiBVTExPTkdfTUFYOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgbWF4aW11bSA9ICgxVUxMIDw8IGJ5dGVzKSAtIDFVTEw7CiAgICAgICAgfQoKICAgICAgICB1bnNpZ25lZCBsb25nIGxvbmcgbWluaW11bSA9IChpc1Vuc2lnbmVkID8gMFVMTCA6ICgxVUxMIDw8IGJ5dGVzKSk7CgogICAgICAgIGlmKCFpc1Vuc2lnbmVkKSB7CiAgICAgICAgICAgIHB1dGNoYXJfdW5sb2NrZWQoJy0nKTsKICAgICAgICB9CgogICAgICAgIHByaW50ZigiJWxsdSAlbGx1ICIsIG1pbmltdW0sIG1heGltdW0pOwoKICAgICAgICBpZihpc05lZ2F0aXZlICYmIGlzVW5zaWduZWQpIHsKICAgICAgICAgICAgcHJpbnRmKCJVcHMiKTsKICAgICAgICB9CiAgICAgICAgZWxzZSBpZighaXNOZWdhdGl2ZSAmJiBudW1iZXIgPiBtYXhpbXVtKSB7CiAgICAgICAgICAgIHByaW50ZigiVXBzIik7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYoaXNOZWdhdGl2ZSAmJiBudW1iZXIgPiBtaW5pbXVtKSB7CiAgICAgICAgICAgIHByaW50ZigiVXBzIik7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICBpZihpc05lZ2F0aXZlKSB7CiAgICAgICAgICAgICAgICAtLW51bWJlcjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaW50IGkgPSAwOwogICAgICAgICAgICB3aGlsZShudW1iZXIpIHsKICAgICAgICAgICAgICAgIG51bWJlclN0cmluZ1tpKytdID0gKChudW1iZXIgJiAxKSArICcwJyk7CiAgICAgICAgICAgICAgICBudW1iZXIgPj49IDE7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKGlzVW5zaWduZWQpIHsKICAgICAgICAgICAgICAgICsrYnl0ZXM7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHdoaWxlKGkgPCBieXRlcykgewogICAgICAgICAgICAgICAgbnVtYmVyU3RyaW5nW2krK10gPSAnMCc7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKGlzVW5zaWduZWQpIHsKICAgICAgICAgICAgICAgIC0taTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIG51bWJlclN0cmluZ1tpXSA9IChpc05lZ2F0aXZlID8gJzEnIDogJzAnKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgd2hpbGUoaSA+PSAwKSB7CiAgICAgICAgICAgICAgICBwdXRjaGFyX3VubG9ja2VkKG51bWJlclN0cmluZ1tpLS1dKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcHV0Y2hhcl91bmxvY2tlZCgnXG4nKTsKICAgIH0KCiAgICByZXR1cm4gMDsKfQ==
NDAKMiBTSUdORUQgMAoyIFNJR05FRCAxCjIgU0lHTkVEIDIKMiBTSUdORUQgMwoyIFNJR05FRCAtMQoyIFNJR05FRCAtMgoyIFNJR05FRCAtMwozIFNJR05FRCAxCjMgU0lHTkVEIDIKMyBTSUdORUQgMwozIFNJR05FRCA0CjMgU0lHTkVEIDUKMyBTSUdORUQgLTEKMyBTSUdORUQgLTIKMyBTSUdORUQgLTMKMyBTSUdORUQgLTQKMyBTSUdORUQgLTUKMSBVTlNJR05FRCAwCjEgVU5TSUdORUQgMQoxIFVOU0lHTkVEIDIKMiBVTlNJR05FRCAwCjIgVU5TSUdORUQgMQoyIFVOU0lHTkVEIDIKMiBVTlNJR05FRCAzCjIgVU5TSUdORUQgNAozIFVOU0lHTkVEIDAKMyBVTlNJR05FRCAxCjMgVU5TSUdORUQgMgozIFVOU0lHTkVEIDMKMyBVTlNJR05FRCA0CjMgVU5TSUdORUQgNQo2NCBTSUdORUQgMQo2NCBTSUdORUQgLTEKNjQgVU5TSUdORUQgMQo2NCBVTlNJR05FRCAtMQo2NCBVTlNJR05FRCA5MjIzMzcyMDM2ODU0Nzc1ODA3CjY0IFVOU0lHTkVEIDkyMjMzNzIwMzY4NTQ3NzU4MDgKNjQgVU5TSUdORUQgOTIyMzM3MjAzNjg1NDc3NTgwOQo2NCBVTlNJR05FRCAxODQ0Njc0NDA3MzcwOTU1MTYxNAo2NCBVTlNJR05FRCAxODQ0Njc0NDA3MzcwOTU1MTYxNQo2NCBVTlNJR05FRCAxODQ0Njc0NDA3MzcwOTU1MTYxNgo2NCBTSUdORUQgOTIyMzM3MjAzNjg1NDc3NTgwNwo2NCBTSUdORUQgOTIyMzM3MjAzNjg1NDc3NTgwOAo2NCBTSUdORUQgLTkyMjMzNzIwMzY4NTQ3NzU4MDcKNjQgU0lHTkVEIC05MjIzMzcyMDM2ODU0Nzc1ODA4CjY0IFNJR05FRCAtOTIyMzM3MjAzNjg1NDc3NTgwOQo=
40
2 SIGNED 0
2 SIGNED 1
2 SIGNED 2
2 SIGNED 3
2 SIGNED -1
2 SIGNED -2
2 SIGNED -3
3 SIGNED 1
3 SIGNED 2
3 SIGNED 3
3 SIGNED 4
3 SIGNED 5
3 SIGNED -1
3 SIGNED -2
3 SIGNED -3
3 SIGNED -4
3 SIGNED -5
1 UNSIGNED 0
1 UNSIGNED 1
1 UNSIGNED 2
2 UNSIGNED 0
2 UNSIGNED 1
2 UNSIGNED 2
2 UNSIGNED 3
2 UNSIGNED 4
3 UNSIGNED 0
3 UNSIGNED 1
3 UNSIGNED 2
3 UNSIGNED 3
3 UNSIGNED 4
3 UNSIGNED 5
64 SIGNED 1
64 SIGNED -1
64 UNSIGNED 1
64 UNSIGNED -1
64 UNSIGNED 9223372036854775807
64 UNSIGNED 9223372036854775808
64 UNSIGNED 9223372036854775809
64 UNSIGNED 18446744073709551614
64 UNSIGNED 18446744073709551615
64 UNSIGNED 18446744073709551616
64 SIGNED 9223372036854775807
64 SIGNED 9223372036854775808
64 SIGNED -9223372036854775807
64 SIGNED -9223372036854775808
64 SIGNED -9223372036854775809