#include<iostream>
using namespace std;
void tr(int n);
int main(){
int n;
cin >> n;
tr(n);
return 0;
}
void tr(int n) {
int res[32] = {0}, temp = 0;
if (n == 0) {
cout << '0';
return;
}
// n > 0 时, 将 n 转换成二进制
while (n > 0) {
if (n % 2 != 0) {
res[temp] = 1;
n -= 1;
}
else {
temp ++;
n /= 2;
}
}
res[temp] = 1;
// 输出
for (int i = temp; i >= 0; i--) {
if (res[i] == 1) {
if (i != temp) cout << '+';
cout << '2';
if (i == 1) continue;
// 将次方数 i 用二进制表示
cout << '(';
tr(i);
cout << ')';
}
}
}