It is better to declare these interfaces to private, and remove virtual.