#include <bits/stdc++.h>
using namespace std;
const int MOD = 1e6 + 3;
int n;
string s;
int dp[2010][2010];
int sum[2010][2010];
int w[2010];
int z[2010];
int main() {
  cin >> s;
  int siz = s.size();
  int len = 0;
  if (s[0] == '/' || s[0] == '*' || s[siz - 1] == '-' || s[siz - 1] == '+' ||
      s[siz - 1] == '/' || s[siz - 1] == '*') {
    puts("0");
    exit(0);
  }
  for (int i = 0; i < siz; i++) {
    if (s[i] == '+' || s[i] == '-') {
      if (s[i + 1] == '+' || s[i + 1] == '-')
        z[len] = 1;
      else if (s[i + 1] == '*' || s[i + 1] == '/') {
        puts("0");
        exit(0);
      }
      len++;
    } else if (s[i] == '/' || s[i] == '*') {
      if (s[i + 1] == '*' || s[i + 1] == '/') {
        puts("0");
        exit(0);
      } else if (s[i + 1] == '+' || s[i + 1] == '-')
        z[len] = 1;
      len++;
    }
  }
  dp[0][0] = 1;
  for (int i = 0; i < len; i++) {
    for (int j = 0; j <= len; j++) {
      sum[i][j] = dp[i][j];
      if (j) sum[i][j] += sum[i][j - 1];
      if (sum[i][j] >= MOD) sum[i][j] %= MOD;
    }
    if (!z[i]) {
      for (int j = 0; j < len; j++) {
        dp[i + 1][j] += sum[i][j + 1];
        if (dp[i + 1][j] >= MOD) dp[i + 1][j] %= MOD;
      }
    } else {
      for (int j = 1; j < len; j++) {
        dp[i + 1][j] += sum[i][j];
        if (dp[i + 1][j] >= MOD) dp[i + 1][j] %= MOD;
      }
    }
  }
  cout << dp[len][0] << "\n";
  return 0;
}
