controller changes to work in any environment