singleOrNone
Returns single element as Some(element), or None if the iterable is empty or has more than one element.
Returns the single element as Some(element) matching the given predicate, or None if element was not found or more than one element was found.