added multiplexer, registerfile