/* There's no such thing as a limit on being the best. You can always go for more. That's what it means to be human. No... That's what it means to be me. */ #include<fstream> #include<iostream> #include<cstdio> #include<map> #include<set> #define FIT(a,b) for(vector<int >::iterator a=b.begin();a!=b.end();a++) #define FITP(a,b) for(vector<pair<int,int> >::iterator a=b.begin();a!=b.end();a++) #define RIT(a,b) for(vector<int>::reverse_iterator a=b.end();a!=b.begin();++a) #include<stack> #define ROF(a,b,c) for(int a=b;a>=c;--a) #include<vector> #include<algorithm> #define FOR(a,b,c) for(int a=b;a<=c;++a) #define REP(a,b) for(register int a=0;a<b;++a) #include<cstring> #include<bitset> #include<cmath> #include<iomanip> #include<set> #define f cin #define g cout #include<queue> #define debug cerr<<"OK"; #define pii pair<int,int> #define mp make_pair #define pb push_back #define fi first #define se second #define ll long long #define ull unsigned long long #define mod 1000000007 #define N 10001 #define SQR 350 #define inf 1<<30 #define div pula #define hi pizda #define down haha using namespace std; /*int dx[]={0,0,0,1,-1}; int dy[]={0,1,-1,0,0};*/ int sol,dim,p,n,cs; char s[N]; int main () { #ifndef ONLINE_JUDGE freopen("a.in","r",stdin); freopen("a.out","w",stdout); #endif while(f.get(s+1,N)) { n=strlen(s+1); int p=1; if(!strncmp(s+1,"unsigned",8)) p=10; if(!strncmp(s+p,"char",4)) { dim=1; p+=5; } else if(!strncmp(s+p,"int",3)) { dim=4; p+=4; } else { dim=2; p+=6; } sol=0; FOR(i,p,n) { cs=1; while(s[i]!=','&&s[i]!='['&&i<=n) ++i; if(s[i]==','||i>n) sol+=dim; else if(s[i]=='[') { while(s[i]=='[') { int x=0; ++i; while(s[i]<='9'&&s[i]>='0') x=x*10+s[i++]-'0'; cs*=x; i++; } sol+=cs*dim; } } g<<sol<<"\n"; f.get(); } return 0; }