return promise on modifyVars