export function matchFirst<T>(pred: Predicate<T>, src?: Iterable<T>): any {
    return isIterable(src)
        ? [...iterator1(matchFirst(pred), src)][0]
        : comp(filter(pred), take(1));
}