renaming to @spec