import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true) {
String input = sc.nextLine();
if(input.equals(".")) break;
String str = "";
for (int i = 0; i < input.length(); i++) {
if(input.charAt(i)==40||input.charAt(i)==41) {
str += input.charAt(i);
} else if(input.charAt(i)==91||input.charAt(i)==93) {
str += input.charAt(i);
}
}
while(str.contains("()")||str.contains("[]")) {
str = str.replaceFirst("\\(\\)", "");
str = str.replaceFirst("\\[\\]", "");
}
System.out.println(str.length()==0?"yes":"no");
}
}
}
접근방식 -> 먼저 ( )와 [ ]를 제외한 문자열을 새로만들고
해당문자열을 ( )과 [ ] 가 모두 포함되어 있지 않을때 까지 ( )와 [ ]를 제거시킨다. 반복이 끝났으면 str의 길이가 0일때는 yes 아니면 no 출력