func_code_string: #include <bits/stdc++.h>   using namespace std;   const int mod = 1000003;   char in[2010];   int catlen[2010];   long long fac[4010], inv[4010], rf[4010];   int t[2010], tc;   int first[2010], stc;   long long dp[2010][2010];   inline int solve() {     int n = strlen(in);     tc = 0;     bool isn = 0, ist;     for (int i = (0); i < (int)(n); ++i) {       ist = 0;       if (in[i] <=  9  && in[i] >=  0 )         isn = 1;       else {         if (isn) {           t[tc++] = 0;           isn = 0;         }         if (i == 0 || !(in[i - 1] <=  9  && in[i - 1] >=  0 )) {           if (in[i] ==  *  || in[i] ==  / ) return 0;           t[tc++] = 1;         } else           ist = 1;       }     }     if (isn) t[tc++] = 0;     if (t[tc - 1] == 1 || ist) return 0;     stc = 0;     for (int i = (0); i < (int)(tc); ++i)       if (t[i] == 0)         first[stc]++;       else         stc++;     if (stc == 0) return catlen[tc];     dp[stc + 1][0] = 1;     int ms = 0;     for (int i = (int)(stc + 1) - 1; i >= 0; --i) {       int r = first[i];       if (i) {         ms += r;         for (int j = (1); j < (int)(ms + 1); ++j) {           for (int k = max(r - j, 0); k <= ms - j; k++) {             dp[i][k + 1] += (dp[i + 1][k + j - r] * catlen[j]) % mod;             if (dp[i][k + 1] >= mod) dp[i][k + 1] -= mod;           }         }       } else {         for (int j = (0); j < (int)(ms + 1); ++j) dp[i][j + r] = dp[i + 1][j];         ms += r;       }     }     int ret = 0;     for (int i = (1); i < (int)(tc + 1); ++i)       ret = (ret + dp[0][i] * catlen[i]) % mod;     return ret;   }   int main() {     inv[1] = 1;     for (int i = 2; i <= 4000; i++)       inv[i] = (inv[mod % i] * (mod - mod / i)) % mod;     fac[0] = rf[0] = 1;     for (int i = 1; i <= 4000; i++) {       fac[i] = (fac[i - 1] * i) % mod;       rf[i] = (rf[i - 1] * inv[i]) % mod;     }     catlen[1] = 1;     for (int i = 1; i <= 2000; i++)       catlen[i + 1] =           (inv[i + 1] * (((fac[2 * i] * rf[i]) % mod * rf[i]) % mod)) % mod;     scanf( %s , in);     printf( %d n , solve());     return 0;   }   