code: def _first_not_none(seq, supplier_func):
          
          for i in seq:
              obj = supplier_func(i)
              if obj is not None:
                  return obj
  
          return None
docs: Applies supplier_func to each element in seq, returns 1st not None
  
          :param seq: Sequence of object
          :type seq: iterable
          :param supplier_func: Function that extracts the desired value from
              elements in seq
          :type supplier_func: function