This could also benefit from splitting it up into sections like headers, forms, etc.