1st template implement