Sync with extra Walker generic parameter
Implement separate by and ancestor access. Simplify generics.