import java.util.*;
class balanced{
    boolean isbalanced(String s){
    Stack<Character>stack=new Stack<>();
    for(int i=0;i<s.length();i++){
        char ch=s.charAt(i);
        if(ch=='('||ch=='{'||ch=='['){
            stack.push(ch);
        }
        else if(ch==')'||ch=='}'||ch==']'){
            if(stack.isEmpty()){
                return false;
            }
            char last=stack.pop();
            if((ch==')'&&last!='(')||
            (ch=='}'&&last!='{')||
            (ch==']'&&last!=']')
            ){
                return false;
            }
        }
        return stack.isEmpty();
    }
    
}
}
public class Main{
    public static void main(String args[]){
        Scanner obj = new Scanner(System.in);
        int n=obj.nextInt();
        if(n<0||n>10){
            System.out.println("Invalid input");
            return;
        }
        String s=obj.nextLine();
        if(s.length()>n&&s.length()>1000&&s.length()<1){
            System.out.println("Invalid input");
            return;
        }
        balanced b=new balanced();
        boolean a=b.isbalanced(s);
        if(a){
            System.out.println("true");
        }
        else{
            System.out.println("false");
        }
    }
}