404 + some refactor