ex 2.86: supporting generic numbers (int/rational/real) for parts making up a complex