#include <bits/stdc++.h>
#pragma GCC optimize(3)
using namespace std;
inline char gc() {
  static const int L = 1000;
  static char sxd[L], *sss = sxd, *ttt = sxd;
  if (sss == ttt) {
    ttt = (sss = sxd) + fread(sxd, 1, L, stdin);
    if (sss == ttt) return EOF;
  }
  return *sss++;
}
inline int read(int& x) {
  x = 0;
  char c = getchar();
  bool f = false;
  for (; !isdigit(c); c = getchar()) {
    if (c == EOF) return -1;
    if (c == '-') f = true;
  }
  for (; isdigit(c); c = getchar()) x = (x << 1) + (x << 3) + (c ^ 48);
  if (f) x = -x;
  return 1;
}
char s[100];
long long i, j, l, r, c, g = 1;
int main() {
  gets(s);
  l = strlen(s);
  for (i = 0; i < l; i++) {
    if ((s[i] == '-') || (s[i] == '+')) {
      r += g * c;
      c = 0;
    }
    if (s[i] == '-') g = -1;
    if (s[i] == '+') g = 1;
    c = c * 10 + s[i] - '0';
  }
  r += g * c;
  cout << r;
  return 0;
}
