change virtual deconstructor