added framework for environment