explicitly define the return type for public interface