static L sortByArgumentHygiene(L l) { new IdentityHashMap scores; for (Lisp x : l) { int score = 0; for (Lisp arg : x) if (arg.isLeaf() && hasRoundBracketHygiene(arg.unq())) ++score; scores.put(x, score); } ret sortByDescScore(l, scores); }