api
some possible impl details
some possible impl details