progress on route middleware