demux and or gates