#include #include using namespace std; char s[201]; int k, lg, i, ab, ai, av, nd, ni; int vcar(int i); int main() { while(cin.get(s, 201)) { lg = strlen(s); ab = ai = av = 0; k = 1; for(i = 0;i < lg;i++) { k = vcar(i); if(k == 0) break; if((s[i] == 'B' || s[i] == 'b') && (s[i + 1] == 'X' || s[i + 1] == 'P' || s[i + 1] == 'x' || s[i + 1] == 'p')) ab++; else if((s[i + 1] == 'I' || s[i + 1] == 'i') && (s[i] == 'S' || s[i] == 'D' || s[i] == 's' || s[i] == 'd')) ai++; else if('a' <= s[i] && s[i] <= 'z') { if('a' <= s[i + 1] && s[i + 1] <= 'z') k = 0; if('0' > s[i + 1] || '9' < s[i + 1]) av++; } if(s[i] == '[') ni++; if(s[i] == ']') nd++; if(av > 1 || ab > 1 || ai > 1) { k = 0; break; } } if(ni != nd) k = 0; if(k == 1) cout << "OK\n"; else cout << "ERROR\n"; cin.get(); } } int vcar(int i) { if(s[i] == '+' || s[i] == '-') return 1; if(s[i] == ']' || s[i] == '[') return 1; if('a' <= s[i] && s[i] <= 'z') return 1; if('0' <= s[i] && s[i] <= '9') return 1; if(s[i] == 'B' || s[i] == 'P' || s[i] == 'S' || s[i] == 'I' || s[i] == 'X') return 1; return 0; }