implement analog input support