Can a multiplexer handle more than one type of input<control surface.h>

Thanks for your time, what you said, was my experience so far. Putting one signal type per mux worked without a hitch, but when I assigned the different functions of button and potentiometer, neither worked.

#include <Control_Surface.h>

USBMIDI_Interface midi;

// Instantiate an analog multiplexer
CD74HC4051 mux = {
  A3,       // Analog input pin
  {2, 3, 4} // Address pins S0, S1, S2
};
CCPotentiometer volumePotentiometers[] = {
  {mux.pin(0), {MIDI_CC::Channel_Volume, CHANNEL_1}},
  {mux.pin(1), {MIDI_CC::Channel_Volume, CHANNEL_2}},
  {mux.pin(2), {MIDI_CC::Channel_Volume, CHANNEL_3}},
  {mux.pin(3), {MIDI_CC::Channel_Volume, CHANNEL_4}},
};
  CCButton button1 [] =  { 
  {mux.pin(4), {MIDI_CC::General_Purpose_Controller_5, CHANNEL_4}},
  {mux.pin(5), {MIDI_CC::General_Purpose_Controller_5, CHANNEL_5}},
  {mux.pin(6), {MIDI_CC::General_Purpose_Controller_5, CHANNEL_6}}
   };



void setup() { Control_Surface.begin(); }
void loop() { Control_Surface.loop(); }