first iteration for visibility