I don't like the side effect setenv. Users can do that.