actually return an environment