add Environment logic