Factory interface.