can we kill `virtual` unless it is required for mocking purposes