changed visibility system to an interface class