Override +(A,B,C) to work around mysterious bug