implement ADC and BSR