first commit for high level API