Split up into more fine-grained methods.