sar virtual component can return a more specific subclass