need some refactory on environment
nothing
merge
refactor almost done!