parameterizes all the things based on environment