add a bit more documentation