Basic template implementation