One level deep
Recursive version without caching
Cleanup VersionRange