#include <stdio.h>
void Encode() {
char c;
char buffer[1000];
int pos = 0;
int is_first = 1;
char prev_was_space = 1;
while (scanf("%c", &c) == 1) {
if (c == '\n') break;
if (c == ' ') {
prev_was_space = 1;
continue;
}
if (!prev_was_space && !is_first) {
printf("n/a\n");
return;
}
if (!is_first) {
buffer[pos++] = ' ';
}
pos += sprintf(&buffer[pos], "%02X", (int)c);
is_first = 0;
prev_was_space = 0;
}
buffer[pos] = '\0';
printf("%s\n", buffer);
}
void Decode() {
char c1, c2, sep;
int is_first = 1;
while (scanf("%c", &c1) == 1) {
if (c1 == '\n') break;
if (c1 == ' ') continue;
if (scanf("%c", &c2) != 1 || c2 == '\n' || c2 == ' ') {
printf("n/a\n");
return;
}
int ret = scanf("%c", &sep);
if (ret == 1 && sep != ' ' && sep != '\n') {
printf("n/a\n");
return;
}
int v1 = -1, v2 = -1;
if (c1 >= '0' && c1 <= '9')
v1 = c1 - '0';
else if (c1 >= 'a' && c1 <= 'f')
v1 = c1 - 'a' + 10;
else if (c1 >= 'A' && c1 <= 'F')
v1 = c1 - 'A' + 10;
if (c2 >= '0' && c2 <= '9')
v2 = c2 - '0';
else if (c2 >= 'a' && c2 <= 'f')
v2 = c2 - 'a' + 10;
else if (c2 >= 'A' && c2 <= 'F')
v2 = c2 - 'A' + 10;
if (v1 == -1 || v2 == -1) {
printf("n/a\n");
return;
}
int val = v1 * 16 + v2;
if (!is_first) printf(" ");
printf("%c", val);
is_first = 0;
}
printf("\n");
}
int main(int argc, char *argv[]) {
if (argc != 2) return 1;
int mode = -1;
if (argv[1][0] == '0' && argv[1][1] == '\0')
mode = 0;
else if (argv[1][0] == '1' && argv[1][1] == '\0')
mode = 1;
if (mode == -1) return 1;
if (mode == 0)
encode();
else
decode();
return 0;
}