starting point of using templates ... need more templates