added flatMap helpers