#include <bits/stdc++.h>
using namespace std;
int n;
void func(int n, int p){ // 正在处理n的二进制的第p位
if(n == 0) return;
int res = n; // res为余数
res = res % 2;
n /= 2;
func(n, p + 1); //先处理高位,再处理当前位
//当n为0时,当前循环前面没有东西了,不需要'+',只需处理余数
//当余数为0时,后面没有东西了,不需要'+'
if(n != 0 && res != 0) cout << '+';
if(res == 1){ //还有余数,当 p > 2 时可以递归推出
if(p == 0) cout << "2(0)";
else if(p == 1) cout << '2';
else if(p == 2) cout << "2(2)";
else{
cout << "2(";
func(p, 0);
cout <<')';
}
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin >> n;
func(n, 0);
return 0;
}