The API can be made simpler :-)