template inheritance working