#include #include #include #include #include #include #include #include #include #include using namespace std; #define int long long int MOD = 1000000007; string S; bool isd(char a) { return a >= '0' && a <= '9'; } int number(int &p) { int res = 0; while (true) { res += S[p] - '0'; p++; if (p >= (int)S.size() || !isd(S[p]))break; res *= 10; } return res; } int f(int &p) { int res = 0; int t = 1; while(p < (int)S.size()) { //cerr << p << " " << res << endl; if (S[p] == '+') { t = 1; p++; } else if (S[p] == '-') { t = -1; p++; } else if (isd(S[p])) { res += number(p) * t; } else if (S[p] == '(') { p++; res += f(p)*t; } else if (S[p] == ')') { p++; //cout << res << endl; return res; } } return res; } signed main() { cin.tie(0); ios::sync_with_stdio(false); //string S; cin >> S; int pos = 0; cout << f(pos) << endl; //cerr << pos << endl; }