Configurable fetch_depth
Change empty() to clear()