changing controller structure