additional template implement and logic