### Question:
MultiplexerVertex extends VertexImpl<T, GenericVertex<T>> implements GenericVertex<T>, NonProbabilistic<T> { public static <T> T mux(IntegerTensor select, T... outputs) { return outputs[select.scalar()]; } MultiplexerVertex(@LoadVertexParam(SELECTOR_CONTROL_NAME) IntegerVertex selectorControlVertex,
                             @LoadVertexParam(SELECT_VERTICES_NAME) Vertex<T, ?>... select); @Override T calculate(); static T mux(IntegerTensor select, T... outputs); @SaveVertexParam(SELECTOR_CONTROL_NAME) IntegerVertex getSelectorControlVertex(); @SaveVertexParam(SELECT_VERTICES_NAME) Vertex<T, ?>[] getSelectVertices();  }### Answer:
@Test public void canStaticMuxWithIntegerSelect() { assertEquals(MultiplexerVertex.mux(IntegerTensor.scalar(0), "a", "b", "c"), "a"); assertEquals(MultiplexerVertex.mux(IntegerTensor.scalar(1), "a", "b", "c"), "b"); assertEquals(MultiplexerVertex.mux(IntegerTensor.scalar(2), "a", "b", "c"), "c"); }