slightly smaller public API