fn argument in .filter .takeWhile .skipWhile is now optional