change type parameter to Record