added base for better controller support, and variable for enabled or disabled state