Added callback and type to Circuit