Reasoning AND Design pattern
Common descendants