問題文

処理犬君は計算が苦手で、いつも計算ミスをしています。
そこで処理犬君は、計算を自動で行ってくれるプログラムを書くことにしました。
ところが処理犬君は、計算の才能が無いだけでなく、プログラムを書く才能も無かったため、計算を自動で行ってくれるプログラムを書くことができませんでした。

処理犬君の代わりに、以下の要件を満たすプログラムを書いてください。

  • 00 から 99 の数字及び、 +* からなる文字列 SS が一行で入力で与えられます。
  • 与えられる文字列は、「正整数、演算子、正整数、演算子、...、正整数」、のように正整数と演算子が交互に並んでおり、最初と最後は正整数です。
  • 文字列中に含まれる演算子は 33 つで、それぞれの意味は以下のようになっています。
    • a+b : 加算
    • a*b : 乗算
    • a**b : aabb
  • 演算子の計算の優先度は高い順に以下のように並んでいます。
  1. a**b
  2. a*b
  3. a+b
  • 優先度が同じ演算子は、文字列の中で、左にあるものほど優先度が高いです。
  • 上記ルールに従って演算を行った結果を出力してください。(計算順序及び計算結果は一意に定まります。)

制約

  • SS00 から 99 の数字及び、 +* からなる文字列
  • SS の長さは 33 以上 100100 以下
  • SS には一つ以上の演算子が含まれる
  • 優先度に従い計算したとき、計算の途中結果及び最後の計算結果は 11 以上 10910^9 以下である
  • SS を演算子と正整数に分けたとき、それぞれの正整数は 11 以上 2020 以下である

入力

S
  • 11 行目に文字列 SS が与えられます。

出力

演算を行った結果を出力してください。

入力例 1

1+2*3**4

出力例 1

163
  • はじめに、優先度が最も高い 3**4 を計算します。よって、1+2*3**4 = 1+2*81 です。
  • 次に、優先度が高い 2*81 を計算します。 よって、1+2*81 = 1+162 です。
  • 最後に最も優先度の低い 1+162 を計算します。よって、1+162 = 163 です。 演算結果は 163163 なので 163163 を出力します。

入力例 2

3**1**4

出力例 2

81

演算子の優先度が同じ場合は、左にあるものほど優先度が高いです。よって、3**1**4 = 3**4 = 81 より、 8181 を出力します。

入力例 3

1+1

出力例 3

2

提出


Go (1.21)