modified multiplexer