unify CPS join behavior