Refactor to be a bit clearer.