allow options.depth to be zero