finished param generation