Builder pattern etc.
More
NICE