sub balanced { $_ = shift; while (s/[(][^()]*[)]//) {}; return 0 if /[()]/; return 1; }