added visibility hidden and visible