documented high-level API