added missing abstract