add 404 middleware