LazyList refactoring