updated to cover all fields