add ac functions