public static IEnumerable <V> Select <U, V>(this NonNull <IEnumerable <U> > list, Func <U, V> selector) => list.Value.Select(selector);
public static U First <U>(this NonNull <List <U> > list, Func <U, bool> predicate) => list.Value.First(predicate);
public static IEnumerable <U> Where <U>(this NonNull <List <U> > list, Func <U, bool> predicate) => list.Value.Where(predicate);
public static U FirstOrDefault <U>(this NonNull <IEnumerable <U> > list, Func <U, bool> predicate) => list.Value.FirstOrDefault(predicate);
public bool Equals(NonNull <T> other) => _value == other._value;