Working, but inefficient, SUM gate constructed