template improvement