#include <bits/stdc++.h>
using namespace std;
string s;
int n;
long long ans;
vector<int> ls, rr;
long long cal(int l, int r) {
  long long val = 0;
  long long tmp = s[l] - '0';
  for (int i = l + 1; i < r; i += 2) {
    if (s[i] == '*')
      tmp *= s[i + 1] - '0';
    else {
      val += tmp;
      tmp = s[i + 1] - '0';
    }
  }
  val += tmp;
  long long res = 0;
  tmp = s[0] - '0';
  if (l == 0) tmp = val;
  for (int i = (l == 0) ? r : 1; i < n; i += 2) {
    if (i + 1 == l) {
      tmp *= val;
      i = r - 2;
      continue;
    }
    if (s[i] == '*')
      tmp *= (long long)(s[i + 1] - '0');
    else {
      res += tmp;
      tmp = (long long)(s[i + 1] - '0');
    }
  }
  res += tmp;
  return res;
}
int main() {
  cin >> s;
  n = s.length();
  ls.push_back(0);
  rr.push_back(n);
  for (int i = 1; i < n; i += 2) {
    if (s[i] == '*') {
      ls.push_back(i + 1);
      rr.push_back(i);
    }
  }
  for (int l = 0; l < ls.size(); l++)
    for (int r = 0; r < rr.size(); r++) {
      if (ls[l] >= rr[r]) continue;
      ans = max(ans, cal(ls[l], rr[r]));
    }
  cout << ans << endl;
  return 0;
}
