Make method virtual
Better error reporting