fix to become virtual destructor