major refactor, not tested
starting 404 page