renamed route() to action()