Refactor.
Refactor.
Refactor to extract some collaborating classes.
refactor.