Vanya is doing his maths homework. He has an expression of form <image>, where x1, x2, ..., xn are digits from 1 to 9, and sign <image> represents either a plus '+' or the multiplication sign '*'. Vanya needs to add one pair of brackets in this expression so that to maximize the value of the resulting expression.

Input

The first line contains expression s (1 ≤ |s| ≤ 5001, |s| is odd), its odd positions only contain digits from 1 to 9, and even positions only contain signs  +  and  * . 

The number of signs  *  doesn't exceed 15.

Output

In the first line print the maximum possible value of an expression.

Examples

Input

3+5*7+8*4


Output

303


Input

2+3*5


Output

25


Input

3*4*5


Output

60

Note

Note to the first sample test. 3 + 5 * (7 + 8) * 4 = 303.

Note to the second sample test. (2 + 3) * 5 = 25.

Note to the third sample test. (3 * 4) * 5 = 60 (also many other variants are valid, for instance, (3) * 4 * 5 = 60).
import java.util.*;

public class Main {

  public static long eeval;

  public static long eval(String s) {
    
    char[] c = s.toCharArray();
    long ret = 0, last_num = 0;
    boolean last_op = false;
    for (int i = 0 ; i < c.length ; i++) {
      if (c[i] == '+') {
        ret += last_num;
        last_op = false;
      } else if (c[i] == '*') {
        last_op = true;
      } else {
        long val = c[i] == 'e' ? eeval : c[i] - '0';
        if (last_op)
          last_num *= val;
        else
          last_num = val;
      }
    }
    ret += last_num;
    
    return ret;
    
  }

  public static void main(String[] args) {
    
    Scanner s = new Scanner(System.in);
    String str = s.next();
    int n = str.length();
    long max = eval(str);
    for (int i = 0 ; i < n ; i += 2) {
      if (i > 0 && str.charAt(i-1) == '+')
        continue;
      if (i < n - 3 && str.charAt(i+1) == '*' && str.charAt(i+3) == '*')
        continue;
      for (int j = i + 3 ; j <= n ; j += 2) {
        if (j < n && str.charAt(j) == '+')
          continue;
        if (j > 4 && str.charAt(j - 2) == '*' && str.charAt(j - 4) == '*')
          continue;
        String e = str.substring(i, j);
        eeval = eval(e);
        String rest = str.substring(0, i) + "e" + str.substring(j);
        max = Math.max(max, eval(rest));
      }
    }
    System.out.println(max);
    
  }

}