Ah, yes, multiple inheritance in C++: where order matters but sanity does not