add interface to make validator more easily swappable