normalized template stuff