added virtual result wrapper