refactoring, changed Reaction to form A+B->C