模板和缓存完成