only do "final" in ~for/common when needed