#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
unsigned long long int a;
string bin, resizeablebin;
string tobin(int a) {
int aa = a, cnt = 0;
bool b;
string bin = "";
while (aa != 0) {
b = aa % 2;
aa /= 2;
bin.append(" ");
bin[cnt++] = (char)(b + '0');
}
bin = string(bin.rbegin(), bin.rend());
return bin;
}
//就是这个函数有问题,其他地方都测试过了
void rsabintosex(string a) {
int i = 0, b = 0, r = 0;
for (int i = 0; i < a.size(); i++) {
if (a[i] == ' ') {
printf("%02X ", r);
r = 0;
continue;
} else {
r *= 2;
r += a[i] - '0';
}
}
}
int main() {
cin >> a;
bin = tobin(a);
while (bin.size() % 7 != 0) {
bin.insert(0, "0");
}
for (int i = 0; i < bin.size(); i++) {
if (i % 7 == 0 && i != 0) {
if (bin.size() - i < 7) {
resizeablebin.append(" 0");
} else {
resizeablebin.append(" 1");
}
} else {
if (bin.size() - i < 7) {
resizeablebin.append("0");
} else {
resizeablebin.append("1");
}
}
string temp;
temp = bin[i];
resizeablebin.append(temp);
}
resizeablebin.append(" ");
rsabintosex(resizeablebin);
}