made compatible with interface.