updated with function highlighting