added notion of "visible"