app.use() and when creating a new instance of : router = express.Router(), what does the express.Router() does? Because in our main script, this will be used as argument in the app.use, like app.use(router). What is happening here? How is app.use behaving as a middleware.... I understand the terminologies but I'm having some difficulties to visualise how they work in real time.