EEC 116 Lecture #5: CMOS Logic