added missing interface and rev'd versions