Problem: One very experienced problem writer decided to prepare a problem for April Fools Day contest. The task was very simple - given an arithmetic expression, return the result of evaluating this expression. However, looks like there is a bug in the reference solution...

Input

The only line of input data contains the arithmetic expression. The expression will contain between 2 and 10 operands, separated with arithmetic signs plus and/or minus. Each operand will be an integer between 0 and 255, inclusive.

Output

Reproduce the output of the reference solution, including the bug.

Examples

Input

8-7+6-5+4-3+2-1-0


Output

4


Input

2+2


Output

-46


Input

112-37


Output

375

Solution (in CPP):

Solution:
#include <bits/stdc++.h>
void init();
void solve();
int main() {
  init();
  while (scanf("%*[ \t\n]*") != EOF) {
    solve();
  }
  return 0;
}
const int MaxN = 1024;
char s[MaxN];
std::vector<int> arr;
std::vector<char> op;
void init() {}
void solve() {
  scanf("%s", s);
  arr.clear();
  op.clear();
  int last = 0;
  for (int i = 0; s[i]; i++) {
    if (s[i] == '+' || s[i] == '-') {
      arr.push_back(last);
      op.push_back(s[i]);
      last = s[i] - '0';
    } else {
      last = last * 10 + s[i] - '0';
    }
  }
  arr.push_back(last);
  int sum = arr[0];
  for (int i = 0; i < op.size(); i++) {
    sum += (op[i] == '+' ? 1 : -1) * arr[i + 1];
  }
  printf("%d\n", sum);
}