doc: it's for internal use