Added the virtual keyword to the derived header to make it clearer that these methods are virtual.