allow shared scopes (refactor), for with/define.