^ improve template model