fixed controller hierarchy