Updated c interface