Model -- functional behavior
class M : virtual public A {\fbox{M}
public: M( int k ) : n(k) { } void operator()() { n++; } int value() { return n; } protected: int n; };
class M : virtual public A {\fbox{M}
public: M( int k ) : n(k) { } void operator()() { n++; } int value() { return n; } protected: int n; };