Separated into templates