the way the offset/limit/callback parameters are implemented does not make them optional