#include <algorithm>
#include <vector>
#include <cfloat>
#include <string>
#include <cmath>
#include <set>
#include <cstdlib>
#include <map>
#include <ctime>
#include <iomanip>
#include <functional>
#include <deque>
#include <iostream>
#include <cstring>
#include <queue>
#include <cstdio>
#include <stack>
#include <climits>
#include <sys/time.h>
#include <cctype>

using namespace std;

typedef long long ll;

ll calc(string s) {
  for (int i = 1; i < s.size(); i++) {
    if (s[i] == '+') {
      return stol(s.substr(0, i))+calc(s.substr(i+1));
    }else if (s[i] == '-') {
      return stol(s.substr(0, i))+calc(s.substr(i));
    }
  }

  return stol(s);
}

bool is_kigou(char c) {
  return c == '+' || c == '-';
}

int main() {
  string s;
  cin >> s;
  int n = s.size();
  ll ans = -1e10;
  for (int i = 0; i < n; i++) {
    string t = s.substr(i)+s.substr(0, i);
    if (is_kigou(t[0]) || is_kigou(t[n-1])) continue;
    ans = max(ans, calc(t));
  }
  std::cout << ans << std::endl;
}