Added in the template code (pending refactor). Not fully complete yet (Commit first in case computer dies)