added analog functions