Add DoesNotExits and refactor something