fix AbstractController