#include <iostream>
#include<string.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
char str[50];
cin>>str;
int n=strlen(str);
int dp[n+2][n+2];
int i,j;
for(i=0;i<n;i++)
{
dp[i][i]=dp[i+1][i]=1L;
}
for(i=2;i<=n;i++)
{
for(j=0;j<=n-i;j++)
{
int end= j+i-1;
dp[j][end]=dp[j+1][end];
if(str[j]=='(')
{
for(int k=j+1;k<=end ;k++)
{
if(str[k]==')')
dp[j][end]+= dp[j+1][k-1]*dp[k+1][end];
}
}
}
}
cout<<dp[0][n-1]<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxzdHJpbmcuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCi8qIHJ1biB0aGlzIHByb2dyYW0gdXNpbmcgdGhlIGNvbnNvbGUgcGF1c2VyIG9yIGFkZCB5b3VyIG93biBnZXRjaCwgc3lzdGVtKCJwYXVzZSIpIG9yIGlucHV0IGxvb3AgKi8KCmludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikgewoJY2hhciBzdHJbNTBdOwoJY2luPj5zdHI7CglpbnQgbj1zdHJsZW4oc3RyKTsKCWludCBkcFtuKzJdW24rMl07CglpbnQgaSxqOwoJCglmb3IoaT0wO2k8bjtpKyspCgl7CgkJZHBbaV1baV09ZHBbaSsxXVtpXT0xTDsKCX0KCQoJZm9yKGk9MjtpPD1uO2krKykKCXsKCSAgZm9yKGo9MDtqPD1uLWk7aisrKQoJICB7CgkgIAlpbnQgZW5kPSBqK2ktMTsKCSAgICBkcFtqXVtlbmRdPWRwW2orMV1bZW5kXTsgCgkJCgkJaWYoc3RyW2pdPT0nKCcpCgkJewoJCSAgIGZvcihpbnQgaz1qKzE7azw9ZW5kIDtrKyspCgkJICAgewoJCSAgIAlpZihzdHJba109PScpJykKCQkgICAJIGRwW2pdW2VuZF0rPSBkcFtqKzFdW2stMV0qZHBbaysxXVtlbmRdOwoJCSAgIH0JCgkgICAgfQoJCSAgCQoJICB9CQoJfQkKCWNvdXQ8PGRwWzBdW24tMV08PGVuZGw7CglyZXR1cm4gMDsKfQ==