no longer cache len(...)