#include <iostream>
#include <iomanip>
#include <fstream>
#include <sstream>
#include <cmath>
#include <cstdio>
#include <string>
#include <vector>
#include <algorithm>
#include <cstdlib>
#include <cstring>
#include <map>
#include <queue>
#include <set>
#include <queue>
#include <stack>
#include <deque>
#include <assert.h>
#include <ctime>
#include <bitset>
#include <numeric>
#include <complex>
#include <valarray>
#define MAX 100001
#define MOD 1000003
#define ll long long
using namespace std;
int main(){
ios_base :: sync_with_stdio(false) ; cin.tie(0) ; cout.tie(0) ;
map<char, string> map;
string input, ans;
ll i, x, len, val=0, pw;
map['>'] = "1000" ; map['<'] = "1001" ; map['+'] = "1010" ; map['-'] = "1011" ;
map['.'] = "1100" ; map[','] = "1101" ; map['['] = "1110" ; map[']'] = "1111" ;
cin >> input;
for(i = 0; i < input.size(); ++i) {
ans += map[input[i]];
}
len = ans.length();
x=len - 1;
for(i=len - 1; i >= 0; --i) {
pw = 1;
for (int j = 0; j < x-i; ++j)
pw = (pw*2) % MOD;
if(ans[i] == '1') val = (val%MOD + pw % MOD)%MOD;
}
cout << val <<"\n";
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8aW9tYW5pcD4KI2luY2x1ZGUgPGZzdHJlYW0+CiNpbmNsdWRlIDxzc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxjc3RkaW8+CiNpbmNsdWRlIDxzdHJpbmc+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxhbGdvcml0aG0+CiNpbmNsdWRlIDxjc3RkbGliPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHF1ZXVlPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8cXVldWU+CiNpbmNsdWRlIDxzdGFjaz4KI2luY2x1ZGUgPGRlcXVlPgojaW5jbHVkZSA8YXNzZXJ0Lmg+CiNpbmNsdWRlIDxjdGltZT4KI2luY2x1ZGUgPGJpdHNldD4KI2luY2x1ZGUgPG51bWVyaWM+CiNpbmNsdWRlIDxjb21wbGV4PgojaW5jbHVkZSA8dmFsYXJyYXk+CiNkZWZpbmUgTUFYIDEwMDAwMQojZGVmaW5lIE1PRCAxMDAwMDAzCiNkZWZpbmUgbGwgbG9uZyBsb25nCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgoKCmludCBtYWluKCl7CgoJaW9zX2Jhc2UgOjogc3luY193aXRoX3N0ZGlvKGZhbHNlKSA7IGNpbi50aWUoMCkgOyBjb3V0LnRpZSgwKSA7CgogICAgbWFwPGNoYXIsIHN0cmluZz4gbWFwOwoKICAgIHN0cmluZyBpbnB1dCwgYW5zOwoKICAgIGxsIGksIHgsIGxlbiwgdmFsPTAsIHB3OwoKCiAgICBtYXBbJz4nXSA9ICIxMDAwIiA7IG1hcFsnPCddID0gIjEwMDEiIDsgbWFwWycrJ10gPSAiMTAxMCIgOyBtYXBbJy0nXSA9ICIxMDExIiA7IAogICAgbWFwWycuJ10gPSAiMTEwMCIgOyBtYXBbJywnXSA9ICIxMTAxIiA7IG1hcFsnWyddID0gIjExMTAiIDsgbWFwWyddJ10gPSAiMTExMSIgOwogICAgCiAgICAgY2luID4+IGlucHV0OwoKICAgICBmb3IoaSA9IDA7IGkgPCBpbnB1dC5zaXplKCk7ICsraSkgewogICAgICAgIAogICAgICAgICBhbnMgKz0gbWFwW2lucHV0W2ldXTsgICAgICAgIAogICAgIH0KCiAgICAgbGVuID0gYW5zLmxlbmd0aCgpOwoKICAgICB4PWxlbiAtIDE7CgogICAgIGZvcihpPWxlbiAtIDE7IGkgPj0gMDsgLS1pKSB7CgogICAgIAlwdyA9IDE7CiAgICAgCWZvciAoaW50IGogPSAwOyBqIDwgeC1pOyArK2opCiAgICAgCQlwdyA9IChwdyoyKSAlIE1PRDsKCiAgICAgCWlmKGFuc1tpXSA9PSAnMScpIHZhbCA9ICh2YWwlTU9EICsgcHcgJSBNT0QpJU1PRDsKCiAgICAgfQoKCgogICAgIGNvdXQgPDwgdmFsICA8PCJcbiI7CgogICAgIHJldHVybiAwOwoKICAgICAKfQ==
Wy1dLCZsdDtdLCZsdDsmbHQ7LCZsdDtbLCZndDssKyZndDtbWyZsdDsmZ3Q7LixbJmd0Oy1bLVsmbHQ7Jmd0OyZsdDsmZ3Q7Jmd0OyZsdDsmbHQ7Jmx0OyZsdDtdJmd0OywuLV0uJmd0Oy1bWyZndDsrLCZndDssWywtLC4tLC1bW10mZ3Q7Li4mbHQ7Jmd0OywmbHQ7WyssLSZsdDtdLSsrLiZsdDsrLl0mbHQ7LFtbLiZsdDsmbHQ7LSZndDsmbHQ7Jmx0OyZsdDtdLAo=
[-],<],<<,<[,>,+>[[<>.,[>-[-[<><>><<<<]>,.-].>-[[>+,>,[,-,.-,-[[]>..<>,<[+,-<]-++.<+.]<,[[.<<-><<<],