added router and handlers