updated SimEnvironmentImpl