class MultiplexerVertex extends VertexImpl<T, GenericVertex<T>> implements GenericVertex<T>, NonProbabilistic<T> {

    public static <T> T mux(IntegerTensor select, T... outputs) {
        return outputs[select.scalar()];
    }

    public  MultiplexerVertex(@LoadVertexParam(SELECTOR_CONTROL_NAME) IntegerVertex selectorControlVertex,
                             @LoadVertexParam(SELECT_VERTICES_NAME) Vertex<T, ?>... select);

}