#include <iostream>
#include <stack>
using namespace std;
int main() {
string str;
stack<char> stk;
cin >> str;
for (auto& ch : str) {
if (ch == '[' || ch == '(' ) { // 把左括号压入栈中,让右括号与其匹配
stk.push(ch);
} else if (ch == ']' || ch == ')') {
if (stk.empty()) {
cout << "false";
return 0;
} else if (ch == ']') {
if (stk.top() == '[') {
stk.pop();
} else {
cout << "false";
return 0;
}
} else {
if (stk.top() == '(') {
stk.pop();
} else {
cout << "false";
return 0;
}
}
}
}
if (stk.empty()) {
cout << "true";
} else {
cout << "false";
}
return 0;
}
// 64 位输出请用 printf("%lld")