compleated section 1 & 2, refactored template with includes