sub balanced { my $string = shift; my $stack = 0; @string = split //, $string; for (@string) { last if $stack < 0; $stack++ if /[(]/; $stack-- if /[)]/; } return $stack ? 0 : 1; }