A. Вычисления в C*++
ограничение по времени на тест
2 seconds
ограничение по памяти на тест
64 megabytes
ввод
стандартный ввод
вывод
стандартный вывод

Язык C*++ похож на C++. Это сходство проявляется в том, что программы на C*++ порой ведут себя непредсказуемо и приводят к совершенно неожиданным эффектам. Например, представим себе арифметическое выражение на C*++, имеющее следующий вид:

  • expression ::= summand | expression + summand | expression - summand
  • summand ::= increment | coefficient*increment
  • increment ::= a++ | ++a
  • coefficient ::= 0|1|2|...|1000

Например, 5*a++-3*++a+a++ — это корректное арифметическое выражение на C*++.

Итак, мы имеем сумму, состоящую из нескольких слагаемых, разделенных знаками «+» или «-». Каждое слагаемое представляет собой выражение «a++» или «++a», умноженное на некоторый целый коэффициент. Если коэффициент опущен, то предполагается, что он равен 1.

Вычисление такой суммы в C*++ происходит следующим образом. Сначала по очереди вычисляются все слагаемые, после этого происходит суммирование по обычным арифметическим правилам. Если слагаемое содержит «a++», то при его вычислении сначала происходит умножение значения переменной «a» на коэффициент, затем значение «a» увеличивается на 1. Если слагаемое содержит «++a», то действия над ним выполняются в обратном порядке: сначала — увеличение «a» на 1, затем — умножение на коэффициент.

Порядок вычисления слагаемых может быть любым, поэтому иногда результат вычисления выражения совершенно непредсказуем! Ваша задача — найти наибольшее возможное его значение.

Входные данные

В первой строке входного файла задано одно целое число a ( - 1000 ≤ a ≤ 1000) — начальное значение переменной «a». В следующей строке содержится выражение на языке C*++ описанного вида. Количество слагаемых в выражении не превосходит 1000. Гарантируется, что строка, описывающая выражение, не содержит пробелов и знаков табуляции.

Выходные данные

Выведите единственное число — наибольшее возможное значение выражения.

Примеры
Входные данные
1
5*a++-3*++a+a++
Выходные данные
11
Входные данные
3
a+++++a
Выходные данные
8
Примечание

Рассмотрим второй пример. Сначала a = 3. Пусть сначала вычисляется первое слагаемое, потом — второе. Первое слагаемое получается равным 3, и значение a увеличивается на 1. При вычислении второго слагаемого значение a сначала еще раз увеличивается (становится равным 5). Значение второго слагаемого — 5, и в сумме получаем 8. При вычислении сначала второго, а потом первого слагаемого получаем, что оба слагаемых равны 4 и ответ тоже 8.