#118 use template