add virtual_inheritance
add virtual_inheritance