added circuit interface