Stream and Stream.headOption, with tests