first work on visibility