updated with validity