#include <iostream>
#include <string>

using namespace std;

int t;

int fomula(string str, int p, int q, int r)
{
	int v = 1;
	if(str[t] == 'P'){
		t++;
		v = p;
	} else if(str[t] == 'Q'){
		t++;
		v = q;
	} else if(str[t] == 'R'){
		t++;
		v = r;
	} else if('0' <= str[t] && str[t] <= '2'){
		v = (int)(str[t]-'0');
		t++;
	} else if(str[t] == '-'){
		t++;
		v = 2-fomula(str, p, q, r);
	} else {
		t++;
		int v1 = fomula(str, p, q, r);
		char w = str[t++];
		int v2 = fomula(str, p, q, r);
		t++;
		if(w == '+'){
			if(v1 == 2 || v2 == 2){
				v = 2;
			} else if(v1 == 0 && v2 == 0){
				v = 0;
			}
		} else {
			if(v1 == 0 || v2 == 0){
				v = 0;
			} else if(v1 == 2 && v2 == 2){
				v = 2;
			}
		}
	}
	
	return v;
}

int main()
{
	int c;
	string str;
	
	while(cin>>str && str != "."){
		c = 0;
		for(int i = 0; i < 3; i++){
			for(int j = 0; j < 3; j++){
				for(int k = 0; k < 3; k++){
					t = 0;
					if(fomula(str, i, j, k) == 2){
						c++;
					}
				}
			}
		}
		
		cout << c << endl;
	}
	
	return 0;
}