java op and lazy-cat mapcat dfs children