little refactor - decoupling introspector