update route implementation