this is just tricky enough (return inside the if) that it might be worth a comment