combined stack and local var constraints into a single list
simplified complex-constraint rules by using map instead of fold and adding to a list that doesn't need to be inspected anyway