more work on basic template